Kevin pyta,
Mam zestaw danych przechowywanych w pliku tekstowym rozdzielanym tabulatorami. Niektóre informacje muszą zachować „dopełnienie” - na przykład kody pocztowe (muszą mieć długość 5 lub 9 znaków). Po otwarciu pliku tekstowego w programie Excel automatycznie pojawia się Kreator importu tekstu. Istnieje możliwość określenia, że kolumna zawierająca te dane to Tekst, a nie Generic. Wybranie tej opcji działa - ale wymaga ręcznego otwarcia. Nie byłem w stanie znaleźć sposobu w VBA, aby informacje były tekstowe, a nie ogólne - i zapisałem moje „wypełnienie”.
Włącz rejestrator makr i nagraj proces importowania pliku tekstowego. Oto wynikowy kod:
Workbooks.OpenText Filename:= “C:TestData.txt”, Origin:=437, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 2), Array(4, 1)), TrailingMinusNumbers:=True
Parametr FieldInfo steruje sposobem importowania każdego pola. W tym przypadku rejestrator makr zauważył, że masz 4 pola. Wpis Array (2, 1) mówi, że w drugim polu należy użyć typu pola „Ogólne”. Zwróć uwagę, że w polu 3 wpis to Array (3, 2). „2” to kod programu Excel do importowania tego pola jako tekstu.