Если бы вы просматривали свой исходный код в любом редакторе кода, снабженном подсветкой синтаксиса VBA, вы скоро обнаружите дисбаланс в одинарных и двойных кавычках в конкатенации строк - это можно продемонстрировать даже с помощью подсветки синтаксиса на этом сайт:
SQL1 = "SELECT t.ID, t.Name " _
&"FROM t " _
& WHERE (((t.Name) Like " * " & '" & j & "' & " * ")); "
Обратите внимание, что WHERE (((t.Name) Like
не отображается в виде строки, так как в этой строке отсутствует открывающая двойная кавычка, а все, что следует за первой одинарной кавычкой, рассматривается как комментарий.
Поскольку только переменные данные требуют объединения, определение переменной SQL1
может быть значительно упрощено до следующего:
SQL1 = "SELECT t.ID, t.Name FROM t WHERE t.Name Like '*" & j & "*'"
Или же вы можете использовать двойные кавычки следующим образом, чтобы получить двойные кавычки в полученной объединенной строке:
SQL1 = "SELECT t.ID, t.Name FROM t WHERE t.Name Like ""*" & j & "*"""