Доброго времени суток. Подскажите пожалуйста, как реализовать следующее: в Excel есть список значений(динамический, от 1 -до N) Каким образом его можно брать в переменную, и передавать в SQL ? P.S. получение данный реализовано в VBA ниже пример с двумя переменными.
создать переменную типа string, циклом забрать в нее данные с диапазона и влупить в in
Код
Dim SQL$, oCell As Range
For Each oCell In Sheets("ëèñò1").Range("A1:A10")
SQL = SQL & "'" & oCell.Value & "',"
Next
SQL = Left(SQL, Len(SQL) - 1)
' чего то там
where u.locatn in (" & SQL & ");"
Эээхх.. к сожалению из за ограничений ввода данных в одну строку в VBA, не удается работать со списком более чем 100+ символов в переменной, а еще и сама SQL.
Евгений Квитницкий пишет: ...из за ограничений ввода данных в одну строку в VBA, не удается работать со списком более чем100+ символов в переменной...
Не понял. Строковая переменная может содержать объём, ограничиваемый только памятью компьютера. А если Вы имеете в виду, что строка редактора мала, то разбивайте её:
Код
Переменная = "Какая-то длинная строка" & _
"Здесь мы её продолжаем" & _
"а ещё здесь. И так далее...."
Добрый вечер, а можно без цикла обойтись в таком примере: .Open " SELECT INN, PhoneNumber from ugph.dbo.v_ClientPhone WHERE INN = '" & Format(Sheets("Телефоны").Range("d2").Value, "General Number") & "' ", cn