Как разбить длинную строку на несколько строк
Я использую этот оператор insert в своем коде в vba excel, но я не могу разбить его на несколько строк
SqlQueryString = "Insert into Employee values(" & txtEmployeeNo.Value & " _
,'" & txtContractStartDate.Value & "' _
,'" & txtSeatNo.Value & "' _
,'" & txtFloor.Value & "','" & txtLeaves.Value & "')"
Он дает ошибку "Ожидаемый конец заявления". Справка Plz.
Ответы
Ответ 1
Вы не можете использовать символ продолжения строки VB внутри строки.
SqlQueryString = "Insert into Employee values(" & txtEmployeeNo.Value & _
"','" & txtContractStartDate.Value & _
"','" & txtSeatNo.Value & _
"','" & txtFloor.Value & "','" & txtLeaves.Value & "')"
Ответ 2
вы можете просто создать свою строку в несколько шагов, немного избыточную, но она сохраняет читаемый код и поддерживает здравомыслие при отладке или редактировании
SqlQueryString = "Insert into Employee values("
SqlQueryString = SqlQueryString & txtEmployeeNo.Value & " ,"
SqlQueryString = SqlQueryString & " '" & txtEmployeeNo.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtContractStartDate.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtSeatNo.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtContractStartDate.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtSeatNo.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtFloor.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtLeaves.Value & "' )"
Ответ 3
Если длинная строка на несколько строк вас смущает. Затем вы можете установить mz-tools addin, который является бесплатным и имеет утилиту, которая разделяет вашу линию.
Загрузить Mz-tools
Если ваша строка выглядит ниже
SqlQueryString = "Insert into Employee values(" & txtEmployeeNo.Value & "','" & txtContractStartDate.Value & "','" & txtSeatNo.Value & "','" & txtFloor.Value & "','" & txtLeaves.Value & "')"
Просто выберите строку > щелкните правой кнопкой мыши по VBA IDE > Выбрать MZ-инструменты > Разделить строки
![enter image description here]()
Ответ 4
Я знаю, что это просто супер, но на случай, если кто-то найдет это, в Visual Basic 14 Vb поддерживает интерполяцию. Оооочень круто!
Пример:
SQLQueryString = $"
Insert into Employee values(
{txtEmployeeNo},
{txtContractsStartDate},
{txtSeatNo},
{txtFloor},
{txtLeaves}
)"
Оно работает. Документация Здесь