通过 vba 宏访问检查数据集是否包含字符串

Access Check If DataSet contains string via vba Macro

你好 Whosebug 社区!

我目前正在写一些东西,它会在满足某些要求后自动清理数据库。这是我必须做的: 如果一个 table 中的一个单元格包含某个子字符串(比方说 "Mrs."),在另一个 table 中应该检查一个 Togglebox(如果包含 "Mrs." 则为 Yes 并且 No如果不) 我已经解决了在该列中将 Toggleboxes 设置为 -1 的问题,但我必须包括一个检查,如果它甚至必须更改以及在哪一行。为此,我想提出一个 If 结构和一个包含第一个 table 行的 ID 的变量,以确定必须更改第二个 table 中的哪些行。

所以思路是这样的:

If 1st_Table contains "Mrs." Then
   CurrentDb.Execute "UPDATE 2nd_Table SET gender = -1 WHERE foo = 1st_Table.ID_Var"

1st_Table.ID_Var 将包含第一个 table 行的 ID 现在或多或少明显的问题是:我如何完成它? 这基本上是第一次与 VBA/Access 和 SQL 合作,所以我没有更深入地思考如何做到这一点。

提前致谢

问候

geisterfurz007

P.S。变量名称将在最终版本中更改;他们只是为了形象化。刚刚看到他们被SO染上了颜色。

试试这个(SQL 更新查询):

UPDATE 2nd_Table INNER JOIN 1st_Table ON 2nd_Table.ID = 1st_Table.ID
SET 2nd_Table.gender = -1 
WHERE 1st_Table.PersonName LIKE '*Mrs.*'

ID -> table 之间的引用 PersonName -> 第一列 table 包含

夫人