Запрос API Excel VBA с неработающими переменными - Expression.SyntaxError: Ожидается токен ','Excel

Ответить Пред. темаСлед. тема
Гость
 Запрос API Excel VBA с неработающими переменными - Expression.SyntaxError: Ожидается токен ','

Сообщение Гость »


Я использую соединение запроса API в Excel VBA, которое использует оператор SQL для извлечения данных таблицы с веб-сайта, но оператор SQL использует переменные, введенные пользователем на листе. У меня есть строка, генерирующая правильные данные, но она генерирует эту ошибку всякий раз, когда я помещаю переменные вместо жестко запрограммированного URL-адреса. Я искал помощи, но мне кажется, ничего не помогает. Я самоучка и не имею формального образования в области программирования, поэтому, пожалуйста, будьте терпеливы со мной и моими вопросами и заранее благодарим вас за любую помощь и предложения.

PowerQuery:

= пусть Источник = Xml.Tables(Web.Contents(""http://appwright.bldr.com/awapi/awapi.a ... ql=Выбрать отдельный TableOL2ID,key1,key2,key3, key4,key5,returnvalue1,returnvalue2,returnvalue3 из AMTDPSCREENVALS, где tablename='Установить графики оплаты' и TableOL2ID ='System'order by TableOL2ID"", Таблица0 = Источник{0}[Таблица], #"Changed Type" = Table.TransformColumnTypes(Table0,{{"TableOL2ID", введите текст}, {"key1", введите текст}, {"key2", введите текст}, {"key3", введите текст}, { "key5", введите текст}, {"returnvalue1", номер типа}, {"returnvalue2", номер типа}}), #"Расширенный ключ4" = Table.ExpandTableColumn(#"Измененный тип", "key4", {"Элемент:Текст"}, {"Элемент:Текст"}), #"Расширенное возвращаемое значение3" = Table.ExpandTableColumn(#"Расширенный ключ4", "возвратное значение3", {"Элемент:Текст"}, {"Элемент:Текст.1"}), #"Renamed Columns" = Table.RenameColumns(#"Expanded returnvalue3",{{"TableOL2ID", "Location"}, {"key1", "Customer"}, {"key2", "Install Type"}, {" key3", "Тип параметра"}, {"Элемент:Текст", "План/Модель"}, {"key5", "Option"}, {"returnvalue1", "Job Price"}, {"returnvalue2", " Дополнительная оплата"}, {"Элемент:Text.1", "Количество"}}) в #"Переименованные столбцы" Код Excel/VBA:

sourcexml = "Источник = Xml.Tables(" source = "Web.Contents(" & Chr(34) & Chr(34) & APIURL & APISQL_DL & Chr(34) & Chr(34) & Chr(44) ActiveWorkbook.Queries.Add Name:="SubPaySchedule", Формула:= _ "let" & Chr(13) & "" & Chr(10) & sourcexml & source & Chr(13) & "" & Chr(10) & " Table0 = Source{0}" & _ "[Table]," & Chr(13) & "" & Chr(10) & " #""Измененный тип"" = Table.TransformColumnTypes(Table0,{{""TableOL2ID"", type text}, {"" key1", введите текст}, {""key2"", введите текст}, {""key3"", введите текст}, {""key5"", введите текст}, {""returnvalue1"", введите номер }, {""returnvalue2"", номер типа}})," & Chr(13) & "" & Chr(10) & " #""Расширенный ключ4"" = Table.ExpandTableColumn(#""Измененный тип"" , ""key4"", {""Элемент:Текст""}, {""Элемент:" & _ "Text""})," & Chr(13) & "" & Chr(10) & " #""Expanded returnvalue3"" = Table.ExpandTableColumn(#""Expanded key4"", ""returnvalue3"", { ""Element:Text""}, {""Element:Text.1""})," & Chr(13) & "" & Chr(10) & " #""Переименованные столбцы"" = Table.RenameColumns( #""Расширенное возвращаемое значение3",{{""TableOL2ID"", ""Местоположение""}, {""ключ1"", ""Клиент""}, {""ключ2"", ""Тип установки"" }, {""key3"", ""Тип параметра""}, {""Элемент:Текст"", ""План/" & _ "Model""}, {""key5"", ""Option""}, {""returnvalue1"", ""Job Price""}, {""returnvalue2"", ""Sub Pay""}, {""Element:Text.1"", ""Quantity""}})" & Chr(13) & "" & Chr(10) & "in" & Chr(13) & "" & Chr(10) & " #""Переименованные столбцы""" С помощью ActiveSheet.ListObjects.Add(SourceType:=0, source:= _ "OLEDB;Provider=Microsoft.Mashup.OleDb.1;Источник данных=$Workbook$;Location=SubPaySchedule;Extended Properties=""""" _ , Destination:=Range("$A$7")).QueryTable .CommandType = кслкмдскл .CommandText = Array("ВЫБРАТЬ * ИЗ [SubPaySchedule]") .RowNumbers = Ложь .FillAdjacentFormulas = Ложь .PreserveFormatting = Истина .RefreshOnFileOpen = Ложь .BackgroundQuery = Истина .RefreshStyle = xlInsertDeleteCells .SavePassword = Ложь .СохранитьДанные = Истина .AdjustColumnWidth = Истина .RefreshPeriod = 0 .PreserveColumnInfo = Истина .ListObject.DisplayName = "Расписание SubPaySchedule" .Обновить BackgroundQuery:=False Конец с Я попытался поместить исходный код запроса мощности в саму переменную в VBA на найденном мной справочном сайте, но у меня это все равно не работает. Я в растерянности.

Вот какую ошибку я получаю сейчас в PowerQuery:


Изображение

Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Excel»