我修改了一些我看到的代码,它打开了一个单词模板,并通过用当前记录替换书签来填充它。一切正常,直到我尝试从链接(查找)表中写入内容,例如
表A:
ID
Name
Description
JobType (lookup drop down list by JobTypeID in Table B)
表B:
JobTypeID
JobType
表格C:
ID
Name
Description
JobType
这一切都按照计划在表单中运行,并且当我点击一个按钮时,大多数都适用:
'code for connecting to word and opening templates works fine *snip*
With WordApp.Selection
.Goto what:=wdGoToBookmark, Name:="bmName"
.TypeText [Name]
但是当我使用时:
With WordApp.Selection
.Goto what:=wdGoToBookmark, Name:="bmJobType"
.TypeText [JobType]
它不会写入存储在表中的作业类型或显示在表单上的下拉框中....它会写入在其中使用的JobTypeID(1,2,3,4 ....)链接。
我也试过用 me.JobTypeComboBox.value 从表单,但这也显示ID。 有人可以指出我正确的方向。
答案 0 :(得分:1)
查找字段存储一个值但显示不同的值。在您的情况下,您似乎想要显示的值而不是存储的值。处理这个问题的两种方法......
INNER JOIN
表B 到表A 的查询。然后在查询[Table B].JobType
列表中包含SELECT
可以为您提供所需内容。DLookup
表达式检索当前[Table B].JobType
[Table A].JobType
值
醇>
情况令人困惑,因为[Table A].JobType
实际上是一个与[Table B].JobTypeID
对应的数字。在[Table B]
中,名为JobType
的字段是其他内容......也许是文本字段。
希望这些细节不会让你感到困惑,也不会让我感到困惑。如果这是我的应用程序,我会将[Table A].JobType
重命名为[Table A].JobTypeID
并将其保留为简单的数字字段,而不是查找字段。并且可能还基于JobTypeID
在<2}表之间创建关系。