Как я могу импортировать месяц CSV-файлов (с именем даты) в Excel через VBA?

Мне нужно загрузить месяц CSV-файлов в Excel для анализа через VBA. Каждый день месяца представляет собой отдельный файл с именем даты (ГГГГММДД).

В настоящее время я могу загрузить два файла, созданные двумя разными обстоятельствами, A и B, используя

With ActiveSheet.QueryTables.Add(Connection:=Full_F_Name_A, _
                                 Destination:=Range("$H$4"))

Я использую цикл, чтобы изменить A и B (и пункт назначения). Я не понял, как увеличить дату. Я использую поле ввода, чтобы получить дату первого файла в месяце.

F_Name = InputBox("Enter name of first data file eg YYYYMMDD, target=H4, EG4")

Любая помощь будет великолепна, так как я застрял ... и начинающий.

ОК ОК, см. Код VBA ниже. Полученная ошибка времени выполнения '3001' Аргументы имеют неправильный тип, находятся за пределами допустимого диапазона или конфликтуют друг с другом. Отладчик указывает на ".cursorlocation = aduseclient " линия. Возможно, на моем компьютере отсутствует какое-либо программное обеспечение. Вступительное видео на сайте ADO больше не существует, поэтому я не видел вступления. Я попробую другой способ, которым я знаю, просто открыть файлы и выгрузить их в Excel, пока я жду дальнейших советов.

Sub Month_wdata_import()

Set cN = CreateObject("ADODB.Connection")
Set rS = CreateObject("ADODB.Recordset")

Dim sDate As String
Dim sDataPath As String
Dim i As Integer
Dim  mMax As Integer

sDataPath = Worksheets("D&L").Cells(1, "G").Value ' values located in 2nd sheet of workbook
mMax = Worksheets("D&L").Cells(1, "D").Value  'values located in 2nd sheet of workbook

For i = 1 To mMax
    sDate = "A_" + CStr(Worksheets("D&L").Cells(1 + i, "A").Value) ' looping through list of dates in sheet

    With cN
     .cursorlocation = aduseclient
     .CursorType = adopenstatic
     .LockType = adLockreadonly

       .Open ("Provider=Microsoft.Jet.OLEDB.4.0;" & _
       "Data Source=" & sDataPath & ";" & _
       "Extended Properties=""text; HDR=Yes; FMT=Delimited; IMEX=1;""")
    End With

    With rS
      .ActiveConnection = cN
      .Source = "select * from data_" & sDate & "_.csv"
      .Open
    End With

Next

Range("A1").CopyFromRecordset rS

End Sub

Ответы на вопрос(2)

Ваш ответ на вопрос