Întreabă Kevin,
Am un set de date care sunt stocate într-un fișier text delimitat de file. Unele informații trebuie să păstreze „umplutura” - cum ar fi codurile poștale (trebuie să aibă 5 sau 9 caractere în lungime). Când fișierul text este deschis în Excel, Expertul de importare a textului apare automat. Există o opțiune pentru a specifica că coloana care conține acele date este mai degrabă text decât generic. Selectarea acestei opțiuni funcționează - dar necesită să deschid manual. Nu am reușit să găsesc o modalitate în VBA pentru ca informațiile să fie mai degrabă text decât generice - și să-mi salvez „căptușeala”.
Porniți înregistratorul de macro și înregistrați procesul de importare a fișierului text. Iată codul rezultat:
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
Parametrul FieldInfo controlează modul în care fiecare câmp este importat. În acest caz, reportofonul macro a menționat că aveți 4 câmpuri. Intrarea Array (2, 1) spune că pentru al doilea câmp, utilizați un tip de câmp „General”. Rețineți că pentru câmpul 3, intrarea este Matrice (3, 2). „2” este codul pentru ca Excel să importe acest câmp ca text.