Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如何从VBA访问表单中获取数据并在Outlook用户表单中使用该数据?_Excel_Vba_Outlook - Fatal编程技术网

Excel 如何从VBA访问表单中获取数据并在Outlook用户表单中使用该数据?

Excel 如何从VBA访问表单中获取数据并在Outlook用户表单中使用该数据?,excel,vba,outlook,Excel,Vba,Outlook,例如: 我有一个带有userform的outlookvbaproject,其中包含字段“Name”。按下按钮后,我想从打开的Access文件(123.accdb)、ABC_表单和“FName”字段中获取数据,并将其放入outlook用户表单的“Name”字段中。您对如何在不同/单独的表单之间建立连接有何建议?这取决于您所说的用户表单或表单,因为它们是非常不同的东西。用户表单是可以在Outlook VBA编辑器中设计的表单,通常无法通过外部脚本进行访问。您可以通过创建公共宏/过程来访问它,但实际上

例如:


我有一个带有userform的outlookvbaproject,其中包含字段“Name”。按下按钮后,我想从打开的Access文件(123.accdb)、ABC_表单和“FName”字段中获取数据,并将其放入outlook用户表单的“Name”字段中。您对如何在不同/单独的表单之间建立连接有何建议?

这取决于您所说的用户表单或表单,因为它们是非常不同的东西。用户表单是可以在Outlook VBA编辑器中设计的表单,通常无法通过外部脚本进行访问。您可以通过创建公共宏/过程来访问它,但实际上不支持这种用法

如果您指的是自定义Outlook表单(如在自定义电子邮件、任务、联系人或约会消息中),则在将表单发布到个人表单库(或文件夹或组织库)时,您应该已经在该表单定义中定义了自定义字段。表单区域也是一种不同类型的自定义表单,可以显示自定义属性,但我认为您没有使用这些类型的表单


您还可以将特殊自定义属性添加到任何Outlook项目中,或以相同的方式使用它们,无论它们是否在自定义表单中。有关详细信息,请参阅本文:

将Excel中的值临时保存在某个单元格(甚至可能在隐藏的临时工作表上)或Access中的临时表中。或者,您也可以将数据(您希望传递的数据)写入一个临时(甚至可能是隐藏的)文本文件中,该文本文件随后会被删除。如果您想在运行时直接访问userforms,那么必须使表单
vbModeless
。但我不确定(即使是这样)您是否可以(在运行时)从一个应用程序通过另一个应用程序直接访问它们