Кевин пита,
Имам набор от данни, който се съхранява в текстов файл с разделители. Част от информацията трябва да запази „подложката“ - като пощенските кодове (те трябва да са с дължина 5 или 9 знака). Когато текстовият файл се отвори в Excel, автоматично се появява съветникът за импортиране на текст. Има опция да посочите, че колоната, съдържаща тези данни, е текст, а не общ. Избирането на тази опция работи - но изисква да направя отварянето ръчно. Не успях да намеря начин във VBA информацията да бъде текстова, а не обща - и да запазя моята „подложка“.
Включете макрорекордера и запишете процеса на импортиране на вашия текстов файл. Ето полученият код:
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 контролира начина на импортиране на всяко поле. В този случай макрорекордерът отбеляза, че имате 4 полета. Записът Array (2, 1) казва, че за второто поле използвайте тип поле „General“. Имайте предвид, че за поле 3 записът е Array (3, 2). „2“ е кодът на Excel за импортиране на това поле като текст.