您可以使用 DDE 函数启动与其他应用程序的动态数据交换 (DDE) 对话,从该应用程序请求信息项,并在窗体或报表上的控件中显示该信息。
例如,可以使用文本框的 ControlSource 属性中的 DDE 函数显示 Excel 工作表中指定单元格中的数据。
语法
DDE (应用程序、主题、项)
DDE 函数语法具有以下参数:
| A rgument | 说明 |
|---|---|
| enclave | 标识可参与 DDE 对话的应用程序的字符串表达式。 通常, 应用程序 是一个 .exe 文件的名称, (不带基于 Microsoft Windows 的应用程序(如 Excel)的) .exe 扩展名。 例如,若要启动与 Excel 的 DDE 对话,请在应用程序参数中键入“Excel”。 |
| 主题 | 一个字符串表达式,它是 应用程序识别的主题的名称。 topic 参数通常是文档或数据文件。 有关可能主题的列表,请查看其他应用程序的文档。 |
| 项目 | 一个字符串表达式,它是 应用程序识别的数据项的名称。 查看其他应用程序的文档以获取可能项目的列表。 |
备注
DDE 函数尝试启动与指定的应用程序和主题的 DDE 对话,并请求项中的数据。 如果成功, DDE 函数将返回包含所请求信息的字符串。
如果要从 Excel 请求数据, 项 可以是行和列标识符,例如 "R1C1" 单元格区域的名称或名称。 在下面的示例中, DDE 函数从 Excel 工作表中第 1 行第 1 列的单元格请求信息。 可以在控件属性表上的 ControlSource 属性框中为文本框控件输入以下表达式:
=DDE("Excel", "Sheet1", "R1C1")
只能在文本框、选项组、检查框或组合框的 ControlSource 属性中使用 DDE 函数。 您不能从Visual Basic for Applications (VBA) 模块调用 DDE 函数。
使用 DDE 函数时,控件在表单视图和打印预览中变为只读。 例如,如果在文本框中使用 DDE 函数,则无法编辑文本框中的文本。 必须在其他应用程序中编辑文本。 由于 ControlSource 属性在“窗体”视图和“打印预览”中是只读的,因此必须在“设计”视图中对控件进行更改。
Microsoft Windows 以及计算机的内存和资源决定了可同时打开的 DDE 对话的最大数量。 如果由于其他应用程序未运行或无法识别指定的主题而无法启动对话,或者如果已达到最大对话数,则 DDE 函数将返回 Null。
注意
另一个应用程序可能配置为忽略你的 DDE 对话请求。 如果是这样, DDE 函数将返回 Null。 同样,您可以将 Access 设置为忽略来自其他应用程序的请求:单击“文件”菜单上的“Access 选项”,然后单击“应用程序设置”对话框中的“高级”。 在“ DDE 操作”下,选择“ 忽略 DDE 请求”。
提示
如果需要从 Access 操作另一个应用程序的对象,可能需要考虑使用“自动化”。
下表说明了 DDE 函数与每个控件一起使用时的行为。
| 控制 | 备注 |
|---|---|
| 文本框 | item 参数可以引用文本或数字。 如果 项 引用多条信息,例如 Excel 工作表中包含多个单元格的命名区域, DDE 函数将返回第一个条目。 可将此函数与文本框配合使用,以显示工作表上单元格中包含的数据。 |
| 组合框 | DDE 函数使用物品引用的信息填充组合框。 不能在框的文本部分输入数据。 您可以将 DDE 函数与组合框结合使用,以显示您在 Excel 工作表中维护的国家/地区列表。 |
| 选项组 | 选项组中每个选项按钮的 OptionValue 属性设置为数字。 通常,第一个按钮值为 1,第二个按钮值为 2,依此类推。
DDE 函数返回的数字确定将选择哪个选项按钮。 例如,如果 DDE 函数返回 2,则将选择第二个按钮。 如果此函数返回的值与任何 OptionValue 属性设置都不匹配,则不会选择任何按钮。 如果 项 引用多条信息,例如 Excel 工作表中包含多个单元格的命名区域, DDE 函数将返回第一个条目。 |
| 复选框 | 如果 DDE 函数返回 0,则将清除该检查框。 如果此函数返回非零数字(如 1 或 -1),则将选中该框。 如果项目引用文本或一条以上信息,例如包含多个单元格的 Excel 工作表中的命名区域,则该检查框将不可用。 |