Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.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
Vba 将DLookup值插入表中_Vba_Ms Access - Fatal编程技术网

Vba 将DLookup值插入表中

Vba 将DLookup值插入表中,vba,ms-access,Vba,Ms Access,所以我有两张桌子,tblMaster和软件 在MS Access vba中是否有方法在tblMaster.Title上执行DLookup以在软件中查找软件标题并在tblMaster.Software Title中插入值 tblMaster |ID|Title |type|state|Software Title| --------------------------------------------------------------- |1

所以我有两张桌子,tblMaster和软件

在MS Access vba中是否有方法在tblMaster.Title上执行DLookup以在软件中查找软件标题并在tblMaster.Software Title中插入值

tblMaster

|ID|Title                           |type|state|Software Title|
---------------------------------------------------------------
|1 |Adobe Reader                    |A   |Close|
|2 |Apache HTTP Server              |A   |Close|
|3 |Multiple Mozilla Products       |A   |Open |
|4 |Microsoft Windows File Handling |A   |Open |
|5 |Microsoft Windows Client Server |A   |Open |
|6 |HP Printer                      |A   |Open |
|7 |Adobe Acrobat                   |A   |Close|
|ID|Title                           |type|state|SWID|Software Title|
---------------------------------------------------------------
|1 |Adobe Reader                    |A   |Close|1   |Adobe
|2 |Apache HTTP Server              |A   |Close|2   |Apache
|3 |Multiple Mozilla Products       |A   |Open |3   |Mozilla
|4 |Microsoft Windows File Handling |A   |Open |4   |Microsoft Windows
|5 |Microsoft Windows Client Server |A   |Open |4   |Microsoft Windows
|6 |HP Printer                      |A   |Open |5   |HP
|7 |Adobe Acrobat                   |A   |Close|1   |Adobe
软件

|SWID|Software Title    |location|
----------------------------------
|1   |Adobe             |1|
|2   |Apache            |1|
|3   |Mozilla           |1|
|4   |Microsoft Windows |2|
|5   |HP                |3|
我希望tblMaster在DLookup之后看起来像这样:

tblMaster

|ID|Title                           |type|state|Software Title|
---------------------------------------------------------------
|1 |Adobe Reader                    |A   |Close|
|2 |Apache HTTP Server              |A   |Close|
|3 |Multiple Mozilla Products       |A   |Open |
|4 |Microsoft Windows File Handling |A   |Open |
|5 |Microsoft Windows Client Server |A   |Open |
|6 |HP Printer                      |A   |Open |
|7 |Adobe Acrobat                   |A   |Close|
|ID|Title                           |type|state|SWID|Software Title|
---------------------------------------------------------------
|1 |Adobe Reader                    |A   |Close|1   |Adobe
|2 |Apache HTTP Server              |A   |Close|2   |Apache
|3 |Multiple Mozilla Products       |A   |Open |3   |Mozilla
|4 |Microsoft Windows File Handling |A   |Open |4   |Microsoft Windows
|5 |Microsoft Windows Client Server |A   |Open |4   |Microsoft Windows
|6 |HP Printer                      |A   |Open |5   |HP
|7 |Adobe Acrobat                   |A   |Close|1   |Adobe

查询可能会得到您想要的结果。可能只需要将软件ID保存到tblMaster中,然后构建连接两个表的查询来获取标题


UPDATE-tblMaster-Set-SoftwareID=DLookUp(“SWID”、“软件”、“仪器”(“&[Title]&“,[Software Title])>0”)

嘿@June7谢谢你的建议。我试过了,但access说它没有更新,因为违反了验证规则。嗯,它在我的测试中起作用。所以关于你的桌子结构还有一些我不知道的地方。您是否将SoftwareID编号类型字段添加到tblMaster?很抱歉,您是对的,类型是必需的。我确实在tblMaster中添加了SoftwareID数字类型字段。实际上,因为这是一个更新操作,所以所需的参数是不相关的。在我删除那个声明之前,你一定读过我的评论。所以仍然无法解释为什么你的努力失败了,而我的努力成功了。