Вводная точка с запятой разграничила файл CSV

Как каждый открывается, точка с запятой разграничила файл CSV с VBA в Excel 2000?

Демонстрационные данные

An ID;TEST20090222
A Name;Firstname Surname
A Date;11.05.2000

Country:;SomeCountryName
Currency;EUR
CostA;
CostB;
CostC;
Part1;10;20;30
Part2;;;;
Part3;34;56;87

Код

В Excel 2003 11.8231.8221 SP3 с VBA 05.06.1025, я могу открыться, точка с запятой разграничила файл со следующим кодом VBA:

Workbooks.OpenText filename:=myFilename, _
    DataType:=xlDelimited, Semicolon:=True, Local:=True

Однако, когда тот же код выполняется в excel 2000 9.0.8961 SP1 с VBA 05.06.1025, я получаю следующую ошибку:

Ошибка компиляции: Параметр, передаваемый по имени, не найденный

Это - я думаю - потому что Excel 2000 не знает "Локального" параметра, передаваемого по имени.

Поэтому я удалил часть "Local:=True". Но проблема затем состоит в том, что вся строка из файла CSV записана в одну ячейку вместо того, чтобы быть разделенной на разграниченные части отдельной точки с запятой.

Я искал Интернет решение, но ничто не нашел полезным и кратким.

Какие-либо идеи?

[Обновите 17.02.2009]

Я попробовал предложение от пользователя lc с макро-устройством записи. Однако результаты сбивали с толку.

Когда я открываю файл CSV с файлом меню-> Открытый... и затем выбираю файл CSV, точка с запятой отделилась, данные правильно анализируются. И зарегистрированный код так же прост как:

Workbooks.Open filename:= _
               "D:\testdata\Example 01 CSV\input.csv"

Но когда я использую это код VBA в моем макросе, каждый концы строки в одной ячейке снова.

Согласно предложению от пользователя barrowc, я также изменил настройки Windows "Regional and Language Options" с "немецкого языка (Швейцария)" "английскому языку (Соединенные Штаты)". Даже после перезапуска Excel, ничто не изменилось, та же проблема.

Интересно, почему это работает над системой пользователя Remou. Что региональный и настройки языка Вы имеете?

5
задан Tanveer Badar 27 November 2019 в 13:07
поделиться