如果某个字段为null/blank,则尝试使用VBA删除整行



所以我正在进行一个项目,将excel文件导入Access,但当我进行导入时(excel中的表与Access中的表具有相同的表标题),我往往会得到一堆额外的行,因为在我的excel文件中,我在大多数单元格后面都有函数,所以即使它看起来是空的,Access传输行,即使实际上没有输入任何内容。

所以我的问题是,有没有一种方法可以通过在Access中使用VBA,在导入excel文件后,我可以自动遍历特定表中的所有行,并根据特定条件删除整行。就像一行中有一个空字段一样,它会删除整行。这将节省我很多时间,而不是手动在表中搜索空白字段并自己删除行。

我确实有使用VBA的知识,但我不确定如何做到这一点,我试图使用DELETE SQL语句,但由于我需要它在VBA中,所以无法正确执行。

  1. 创建一个SQL查询,该查询将收回要删除的行
  2. 查询完成后,进入的SQL视图查询,并删除FROM子句之前的所有内容
  3. 相反,在那里键入DELETE。保存查询。所以它应该看起来像"从哪里删除"

因此,现在您有了一个查询,它将删除您希望它运行的行。现在,要使它通过VBA运行(请注意,只需在"查询"窗格中双击它,就可以手动运行它),只需将以下行放在您希望它运行的位置即可。

docmd.OpenQuery "yourDeleteQueryName"

请注意,您的DeleteQueryName应替换为您的Delete查询名称。

最新更新