Проблемы с использованием переменных VBA для определения источника Power Query

PDF Path — это путь к PDF-файлу, удаленный из соображений конфиденциальности — код работает с этим на месте.

У меня возникли проблемы со вставкой переменной в последнюю строку этого кода VBA. По сути, мне нужно получить определенные таблицы из разных PDF-файлов. На каждой странице этих PDF-файлов есть две таблицы, и мне всегда нужна вторая, а не первая. Пользователь вводит количество страниц в PDF-файле, и этот цикл запускается и запрашивает необходимые таблицы.

Где бы ни было написано Table002, мне нужно, чтобы это была переменная Table_No, чтобы при обратном проходе цикла она захватывала Table004, затем Table006 и так далее, но я продолжаю сталкиваться с разными ошибками. Этот код работает, как и ожидалось, для первого цикла, моя проблема в том, чтобы заставить его захватить новую таблицу, а не ту, которую он уже захватил. Кто-нибудь может помочь? Должна ли моя переменная иметь другой тип данных?

Dim Table_Max As Integer
Dim Ack_Pages As Integer
Dim Table_No As String

Ack_Pages = InputBox("Enter the number of pages on the acknowledgement file.")
Table_Max = Ack_Pages * 2

For i = 2 To Table_Max Step 2
    Table_No = "Table00" & i
        ActiveWorkbook.Queries.Add Name:=Table_No, Formula:= _
            "let" & Chr(13) & "" & Chr(10) & "    Source = Pdf.Tables(File.Contents(""" & PDFPath & """), [Implementation = ""1.3""])," & Chr(13) & "" & Chr(10) & "    Table002 = Source{[Id = ""Table002""]}[Data]," & Chr(13) & "" & Chr(10) & "    #""Changed Type"" = Table.TransformColumnTypes(Table002,{{""Column1"", type text}, {""Column2"", type text}, {""Column3"", type text}, {""Column4"", type text}, {""Column5"", type text}})" & Chr(13) & "" & Chr(10) & "in" & Chr(13) & "" & Chr(10) & "    #""Changed Type"""
Table_No = "Table" & Format(i, "000") если >9 столов?
Tim Williams 26.04.2024 01:34
Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
1
1
74
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
  • Id = "Tablexxx" следует изменить, как показано ниже
ActiveWorkbook.Queries.Add Name:=Table_No, Formula:= _
        "let" & Chr(13) & "" & Chr(10) & "    Source = Pdf.Tables(File.Contents(""" & PDFPath & """), [Implementation = ""1.3""])," & Chr(13) & "" & Chr(10) & "    Table002 = Source{[Id = """ & Table_No & """]}[Data]," & Chr(13) & "" & Chr(10) & "    #""Changed Type"" = Table.TransformColumnTypes(Table002,{{""Column1"", type text}, {""Column2"", type text}, {""Column3"", type text}, {""Column4"", type text}, {""Column5"", type text}})" & Chr(13) & "" & Chr(10) & "in" & Chr(13) & "" & Chr(10) & "    #""Changed Type"""

Большое спасибо!! Это сработало отлично. Знаете ли вы, как очистить существующие запросы в VBA?

CS_EP 26.04.2024 06:14

Что означает clear queries?

taller 26.04.2024 06:23
google.com/…
Tim Williams 26.04.2024 07:28

Другие вопросы по теме