Excel Macro Recorder gebruiken - Excel-tips

Kevin vraagt,

Ik heb een set gegevens die is opgeslagen in een door tabs gescheiden tekstbestand. Een deel van de informatie moet de "opvulling" behouden, zoals postcodes (ze moeten 5 of 9 tekens lang zijn). Wanneer het tekstbestand wordt geopend in Excel, verschijnt automatisch de wizard Tekst importeren. Er is een optie om aan te geven dat de kolom met die gegevens Tekst is in plaats van Algemeen. Het selecteren van deze optie werkt, maar het vereist dat ik het handmatig open doe. Ik heb in VBA geen manier kunnen vinden waarop de informatie Tekst is in plaats van Generiek - en mijn 'padding' opslaat.

Zet de macrorecorder aan en neem het importproces van uw tekstbestand op. Hier is de resulterende code:

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

De parameter FieldInfo bepaalt hoe elk veld wordt geïmporteerd. In dit geval heeft de macrorecorder opgemerkt dat je 4 velden hebt. Het item Array (2, 1) zegt dat voor het 2e veld een veldtype "Algemeen" wordt gebruikt. Merk op dat voor veld 3 de invoer Array (3, 2) is. De "2" is de code voor Excel om dit veld als tekst te importeren.

Interessante artikelen...