Använda Excel Macro Recorder - Excel Tips

Innehållsförteckning

Frågar Kevin,

Jag har en uppsättning data som lagras i en flikavgränsad textfil. En del av informationen måste behålla ”vadderingen” - till exempel postnummer (de måste vara 5 eller 9 tecken långa). När textfilen öppnas i Excel kommer guiden Textimport automatiskt upp. Det finns ett alternativ att ange att kolumnen som innehåller data är text snarare än generisk. Att välja det här alternativet fungerar - men det kräver att jag gör öppningen manuellt. Jag har inte kunnat hitta ett sätt i VBA att få informationen att vara text snarare än generisk - och spara min "stoppning".

Slå på makroinspelaren och spela in processen för att importera din textfil. Här är den resulterande koden:

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

FieldInfo-parametern styr hur varje fält importeras. I detta fall noterade makroinspelaren att du har fyra fält. Array (2, 1) posten säger att för det andra fältet, använd en "Allmänt" fälttyp. Observera att för fält 3 är posten Array (3, 2). "2" är koden för Excel för att importera detta fält som text.

Intressanta artiklar...