Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.04.2010, 20:41   #1
Per4eLO
Новичок
Джуниор
 
Регистрация: 23.04.2010
Сообщений: 3
По умолчанию Импорт TXT файлов в Excel

Приветствую всех знатоков!
Помогите человеку далекому от любого программирования
Есть файлы тхт - много... у всех название в виде кода 28004, 77005 и тп.
Внутри каждого файла 2 колонки с цифрами разделенные пробелом:
11968 2
77077 5
1258974 6
и т.д.
Как бы так сделать чтобы все эти файлы можно было импортировать в Excel и получить таблицу вида:
"название файла" 28004 (1 ячейка)/ 11968 (2 ячейка)/ 2 (3 ячейка)
и так далее "название файла"./......./......
Знаю метод только простого импорта в excel - но так только содержание файла, без название и каждый файл в ручную, а их более 100 ежемесячно...
Буду премного благодарен за помощь
Per4eLO вне форума Ответить с цитированием
Старый 23.04.2010, 21:42   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Я думаю этот код спасет пальцы от мозолей.Текстовые файлы должны быть в одной папке с файлом Ексель

Код:
Sub Import()
    On Error Resume Next
 Set oFSO = CreateObject("Scripting.FileSystemObject")
    folder = Replace(ThisWorkbook.FullName, ThisWorkbook.Name, "")

  name_T = Dir(folder & "*.txt")
    While name_T <> ""
 Dim n, RW As Long
Dim s, rez, Txt
Dim namme_F As String
 Txt = oFSO.OpenTextFile(folder & name_T, 1, False).readall
   s = Split(Txt, vbCrLf, -1)
   namme_F = Replace(name_T, ".txt", "")
   ReDim xx(1 To UBound(s) + 1, 1 To 3)
   RW = Sheets("Лист1").UsedRange.Rows.Count + Sheets("Лист1").UsedRange.Row - 1
   ddd = Sheets("Лист1").UsedRange.Row
   For n = 0 To UBound(s)
    rez = Split(s(n), " ", -1)
    xx(n + 1, 1) = namme_F: xx(n + 1, 2) = rez(0)
     xx(n + 1, 3) = rez(1): Next
   Sheets("Лист1").Range("A" & RW + 1 & ":c" & RW + n) = xx
   
         name_T = Dir
    Wend
 oFSO = Nothing
End Sub
Добавил вложение.
Вложения
Тип файла: rar IMPORT.rar (33.4 Кб, 84 просмотров)
Анализ,обработка данных Недорого

Последний раз редактировалось doober; 24.04.2010 в 10:52.
doober вне форума Ответить с цитированием
Старый 24.04.2010, 06:13   #3
Per4eLO
Новичок
Джуниор
 
Регистрация: 23.04.2010
Сообщений: 3
По умолчанию

Уважаемый doober
Не подскажите куда этот код вставлять?
Per4eLO вне форума Ответить с цитированием
Старый 24.04.2010, 08:52   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

в Excel - Alt-F11 - откроется редактор Visual Basic
слева по вашему листу правой кп.мыши - Isert Module (или просто по листу двойной щелчёк)
справа в окошко вставить данный код

вызывать Сервис - Макросы - .... вашмакрос_ Выполнить
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.04.2010, 15:04   #5
Per4eLO
Новичок
Джуниор
 
Регистрация: 23.04.2010
Сообщений: 3
По умолчанию

Уважаемые doober и Serge_Bliznykov!
Огромное спасибо!
Как плюсануть? что-то в правилах не нашел...
Per4eLO вне форума Ответить с цитированием
Старый 24.04.2010, 16:08   #6
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 08.02.2017, 19:25   #7
Анатолий Баулин
Новичок
Джуниор
 
Регистрация: 08.02.2017
Сообщений: 1
По умолчанию ПОМОГИТЕ!!

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
в Excel - Alt-F11 - откроется редактор Visual Basic
слева по вашему листу правой кп.мыши - Isert Module (или просто по листу двойной щелчёк)
справа в окошко вставить данный код

вызывать Сервис - Макросы - .... вашмакрос_ Выполнить


Объясните пожалуйста чайнику куда вставлять код? я не могу разобраться...
Анатолий Баулин вне форума Ответить с цитированием
Старый 08.02.2017, 19:33   #8
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от Анатолий Баулин Посмотреть сообщение
я не могу разобраться...
а пробовал? https://www.youtube.com/watch?v=xtgmhhKZlNM
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Импорт значений из внешних книг Excel по списку файлов Varen1k Microsoft Office Excel 14 14.08.2018 10:09
импорт из txt, работа с массивом данных, экспорт в txt Danara Microsoft Office Excel 4 31.03.2010 00:26
Импорт из txt в MS SQL masterdela БД в Delphi 6 27.03.2010 22:06
каскадный импорт файлов alexinspir PHP 4 19.03.2010 19:43
импорт TXT в XLS(расчет по формулам)-экспорт в XML Zhiltsov Microsoft Office Excel 27 06.07.2009 11:27