VBA代码中的Sql查询 – 如何在Sqlstring之后进行注释

我在VBA代码里面有一些Sql查询,这是一行代码的例子:

strQry = strQry & Worksheets("Data").Cells(9, 7) & """, " & _ 

我需要在这一行的末尾添加注释。 喜欢这个:

 strQry = strQry & Worksheets("Data").Cells(9, 7) & """, " & _ 'comment hjjkk 

我通常使用撇号发表评论,但该字符不被接受。 请指教。 另外,如果可能的话,我需要在这个确切的路线上发表评论。 谢谢!

如果你这样做& _就意味着你在下一行得到了代码,而且这个指令还没有完成。 所以,如果你在& _之后input一个注释,就好像你在你的指令中插入注释

例如:

  myVar = 3 + 5 & _ 'comment at the wrong place +2 = myVar = 3 +5 'comment at the wrong place + 2 

所以你只能做

 myVar = 3 + 5 'comment myVar = myvar + 2 

或者在你的情况下,它会看起来像这样

 strQry = strQry & Worksheets("Data").Cells(9, 7) & """, " 'Comment strQry = styQry &... 

这与SQL查询本身无关,您正试图在续行后添加注释,这是不允许的。

从MSDN文档的评论 :

注释不能在同一行上跟随续行顺序。

用换行符,你不能评论这行,因为VB行不停止(这是一个function,以提高我们的程序员的可读性)。 习惯在完整string之前或之后发表评论

或者,你可以build立部分string,每部分后你可以添加评论:

strQry = strQry & Worksheets("Data").Cells(9, 7) 'comment 1

strQry = strQry & ", " & <next part> 'comment2

等等…

该行末尾的下划线表示VB代码继续在下一行。 下划线之后不能放任何东西。 如果你需要在行尾注释,你将需要重构你的代码来结束这一行,把你的注释放在下一行继续你的string连接。