Workbooks.OpenText не принимает параметр 'fieldinfo' - PullRequest
4 голосов
/ 05 марта 2012

Следующий код демонстрирует проблему, указанную в заголовке вопросов.

Скопируйте и вставьте ее в новую книгу Microsoft Excel 2003.

Sub mytest()
    mypath = Application.GetSaveAsFilename()

    Workbooks.OpenText Filename:=mypath, DataType:=xlDelimited, _ 
        TextQualifier:=xlTextQualifierDoubleQuote, _ 
        semicolon:=True, _ 
        fieldinfo:=Array(Array(1, 2), Array(2, 2), Array(3, 2), Array(4, 2)), _ 
        Local:=True
End Sub

Выполнить код.Будет запрошен входной файл, в котором вы должны использовать этот разделенный точкой с запятой test.csv .Он создает новую рабочую книгу и импортирует все данные из test.csv в sheet1.

На рисунке ниже показан результат
enter image description here

Но результат должен был быть таким, как этот
enter image description here


fieldinfo:=Array(Array(1, 2), Array(2, 2), Array(3, 2), Array(4, 2))
утверждает, что Excel должен обрабатывать все импортированные данные как текст.К сожалению, это не так.

Может кто-нибудь показать мне, как правильно использовать opentext и fieldinfo?

Я уже знаю обходной путь с QueryTables.Add (Connection [...].
Но это не такрешение для моего случая.

1 Ответ

4 голосов
/ 05 марта 2012

Если вы переименуете расширение из входного файла из .csv в .txt, параметр fieldinfo будет работать так, как задумано.

...