Use VbCRLF para quebrar longas strings de SQL
Por que sugerir que se inclua a constante VbCrLf nas quebras de longas strings contendo consultas SQL? Afinal de contas, estas constantes nada significam dentro das strings de SQL. A resposta é: depuração simplificada. Constantemente você precisa criar longas consultas SQL que ocupam várias linhas de programa. Por exemplo,
sSQL = "SELECT * FROM Usuarios" _
& "
WHERE userid = " & lUser _
& "
AND nome = '" & sNome & "'"
Se você cria a consulta SQL desta forma, ela é legível no código do programa, mas não quando você tem de vê-la na janela Immediate em tempo de execução.
Na janela Immediate, você entra com
? sSQL
e uma longa e inteira string é exibida, alcançando quilômetros de distância.
Contudo, se você simplesmente terminar cada linha com VbCRLF, como aqui:
sSQL = "SELECT * FROM Usuarios" & vbCrLf _
& "WHERE
userid = " & lUser & vbCrLf _
& "AND
nome = '" & sNome "'"
então você terá uma visão completa e fácil de ler da sua consulta SQL.
Um outro benefício do exemplo acima é que você não precisa se preocupar em adicionar um espaço no começo (ou fim) de cada linha para evitar que isto:
sSQL = "SELECT * FROM Usuarios" & _
& "WHERE
userid = " & lUser
vire isto:
"SELECT * FROM UsuariosWHERE
userid = 1"
e o seu código gere um erro de sintaxe SQL.