Добрый день!
Подскажите если знаете в чем кроется причина. Макрос загружает из текстового файла, в котором поля разделены точкой с запятой, таблички на листы Excel. Макрос для всех листов один и тот же. Текстовые файлы однотипные. Ну текст он и в Африке текст...
Так вот, на одном листе все загружается нормально, а на другом, вроде как добавляются колонки слева, в которые и происходит запись (это видно по кнопкам, которые уезжают вправо).
Для примера удалил все, что можно. Оставил только сам макрос (который был записан средствами Excel, с последующими незначительными изменениями).
В файле два листа, на каждом кнопка "загрузить".Лист test1 грузит из файла test1.txt, а лист test2 - из файла test2.txt (имена листов соответствуют названию файлов) с test2 все нормально, a test1 глючит.
Прикладываю сам excel файл и ещё оба текстовых файла - все должны лежать в одной папке.
Да, в текстовых файлах текст - это просто символы юникода, поскольку текстовое (читаемое) содержимое должно быть зашифровано.
Сам макрос:
Код |
---|
Dim file_name As String
file_name = ThisWorkbook.Path & "\" & ActiveSheet.Name & ".txt"
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & file_name, Destination:=Range("$A$4:$N$100"))
.Name = "Vertragsansicht_1"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = False
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 65001
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With |
Вот, собственно и все. Ума не приложу в чем дело...