Добрый день! Помогите пожалуйста скорректировать макрос: По выбранным файлам раскидывает по листам с соответственными наименованиями Как изменить на копирование значением txt один под другим на активный лист с добавлением столца = наименование файла?
Код
Sub собрать()
Dim FilesToOpen
Dim x As Integer
Application.ScreenUpdating = False
'отключаем обновление экрана для скорости
'вызываем диалог выбора файлов для импорта
FilesToOpen = Application.GetOpenFilename _
(FileFilter:="All files (*.*), *.*", _
MultiSelect:=True, Title:="Files to Merge")
If TypeName(FilesToOpen) = "Boolean" Then
MsgBox "Не выбрано ни одного файла!"
Exit Sub
End If
'проходим по всем выбранным файлам
x = 1
While x <= UBound(FilesToOpen)
Set importWB = Workbooks.Open(FileName:=FilesToOpen(x))
Sheets().Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count).Name = importWB.Name
importWB.Close 'savechanges:=False
x = x + 1
Wend
Application.ScreenUpdating = True
End Sub
да в PQ всё было бы легко) но у меня есть специфика в txt файлах - множественные переносы строк которые удачнее выходит разделять когда txt просто значением вставлен
surkenny, скажите, а вы параметр "Columns = 13" ручками дописывали?))). У меня при попытке загрузить данный файл как csv выдает такой же код, но без "Columns = 13". Соответственно, не корректно загружает, хотя параметры файла загрузки выставляю как у вас.)