Ms access 2010 Excel中表示Access的VBA为空

Ms access 2010 Excel中表示Access的VBA为空,ms-access-2010,Ms Access 2010,因此,我的问题在于DescriptCheck变量,因为我通过Excel VBA将数据传递到Access数据库,每个描述都是唯一的,但唯一的问题是如果我有一个空行,我如何修改下面的代码,使其为空,使其看起来像它显示的第二个代码片段 二, 我想我必须对if语句进行一些修改。我只是想知道是否有一种快速的方法可以做到这一点。现在出于扩展目的,假设我现在的描述是一个数字而不是一个字符串。我会以同样的方式处理它,当然Car$(34)不会在代码行中。您可以在SQL本身中执行条件语句: sCmndStrin

因此,我的问题在于DescriptCheck变量,因为我通过Excel VBA将数据传递到Access数据库,每个描述都是唯一的,但唯一的问题是如果我有一个空行,我如何修改下面的代码,使其为空,使其看起来像它显示的第二个代码片段

  • 二,


  • 我想我必须对if语句进行一些修改。我只是想知道是否有一种快速的方法可以做到这一点。现在出于扩展目的,假设我现在的描述是一个数字而不是一个字符串。我会以同样的方式处理它,当然Car$(34)不会在代码行中。

    您可以在SQL本身中执行条件语句:

    sCmndString = "SELECT * FROM " & tablename & " WHERE Description =""" & _
                  Descripcheck & """ OR Description IS NULL;"
    

    只要它是一个“数字”,你就必须理解“描述”在任何表格中都有一个类型。。。如果类型是字符串,则DescriptCheck是否为“5”无关紧要,它仍然是字符串,因此在比较中始终需要引号。

    您可以将双引号字符转义为两个连续引号。。。例如,当您打印字符串时,myStr=“I said”“Yes.”将生成“I said”“Yes.”。不需要使用Chr$(34)不,我的意思是如果我有一个新的语句字符串,其中的数据类型是numberrok。。。当然,您可以使用相同的通用SQL字符串,只需删除引号,这是正确的。
     sCmndString = "SELECT * FROM " & tablename & " WHERE Description IS NULL;
    
    sCmndString = "SELECT * FROM " & tablename & " WHERE Description =""" & _
                  Descripcheck & """ OR Description IS NULL;"