Я загрузил CSV-файл в виде двумерного массива в память со следующим кодом:
Sub readcsv()
Dim wbCSV As Workbook
Dim Data As Variant
Application.ScreenUpdating = False
Set wbCSV = Workbooks.Open(Filename:="C:\Users\File.csv")
With wbCSV
Data = .Sheets(1).UsedRange.Value
.Close
End With
End Sub
следующий шаг: я хочу найти данные и выбрать некоторые. Дело в том, что я хочу сделать это, не открывая сам CSV. есть ли способ поиска через загруженный массив? Я также знаю ij об интересных данных в CSV. CSV использует; в качестве разделителя. с этим кодом
data(i,j)
Я ожидаю, что элемент в ячейке ij, но он возвращает бессмысленную строку. Таким образом, вопрос в том, признает ли vba; как разделитель, когда файл загружается таким образом? или мне нужно упорядочить загруженные данные в виде матрицы и затем вызвать конкретную ячейку c?
update:
Я обнаружил, что
data(i,j)
возвращает странную строку, поскольку vba считает ее разделителем. Так, например, когда в 5-й строке у меня есть a; b; 1,2345; c data (5,2) возвращает 2345; c
спасибо