Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Вставка текста из txt на лист - начиная с опред. ячейки - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Вставка текста из txt на лист - начиная с опред. ячейки (Макросы/Sub)
Вставка текста из txt на лист - начиная с опред. ячейки
rotten41 Дата: Четверг, 15.11.2018, 00:36 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 152
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Здравствуйте люди.
Скажите как макросом вставить текст из файла txt, лежащего в одной папке с файлом экселя - на лист (начиная с ячейки C5) ?
К сообщению приложен файл: 8262560.xls(32.0 Kb) · 8037208.txt(0.2 Kb)
 
Ответить
СообщениеЗдравствуйте люди.
Скажите как макросом вставить текст из файла txt, лежащего в одной папке с файлом экселя - на лист (начиная с ячейки C5) ?

Автор - rotten41
Дата добавления - 15.11.2018 в 00:36
sboy Дата: Четверг, 15.11.2018, 10:49 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 2236
Репутация: 631 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
Например так
[vba]
Код
Sub t_()
    t_folder = ThisWorkbook.Path & Application.PathSeparator
    t_file = Dir(t_folder & "*.txt")
        If t_file <> "" Then
            r = 5
            Cells(r, 3).CurrentRegion.ClearContents
            Open t_folder & t_file For Input As #1
                Do While Not EOF(1)
                    Line Input #1, t
                    t = Split(t, Chr(9))
                    Cells(r, 3).Resize(1, UBound(t) + 1) = t
                    r = r + 1
                Loop
            Close #1
        End If
End Sub
[/vba]
К сообщению приложен файл: 2087859.xls(42.5 Kb)
 
Ответить
СообщениеДобрый день.
Например так
[vba]
Код
Sub t_()
    t_folder = ThisWorkbook.Path & Application.PathSeparator
    t_file = Dir(t_folder & "*.txt")
        If t_file <> "" Then
            r = 5
            Cells(r, 3).CurrentRegion.ClearContents
            Open t_folder & t_file For Input As #1
                Do While Not EOF(1)
                    Line Input #1, t
                    t = Split(t, Chr(9))
                    Cells(r, 3).Resize(1, UBound(t) + 1) = t
                    r = r + 1
                Loop
            Close #1
        End If
End Sub
[/vba]

Автор - sboy
Дата добавления - 15.11.2018 в 10:49
rotten41 Дата: Четверг, 15.11.2018, 12:05 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 152
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
sboy, спасибо. Все отлично.
 
Ответить
Сообщениеsboy, спасибо. Все отлично.

Автор - rotten41
Дата добавления - 15.11.2018 в 12:05
krosav4ig Дата: Четверг, 15.11.2018, 15:01 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1734
Репутация: 728 ±
Замечаний: 0% ±

Excel 2007,2010,2013
еще вариант[vba]
Код
Sub xx()
    With Application
        .ScreenUpdating = 0: .EnableEvents = 0: .DisplayAlerts = False
        Open ActiveWorkbook.Path & "\8037208.txt" For Input As #1
        With GetObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
            .SetText Input$(LOF(1), 1)
            .PutInClipboard
        End With
        Close #1
        With [C5:F5]
            Range(.Cells, .End(xlDown)).ClearContents
            .Cells(1).PasteSpecial xlPasteAll
            .Copy
        End With
        .CutCopyMode = 0
        .ScreenUpdating = 1: .EnableEvents = 1: .DisplayAlerts = 1
    End With
End Sub
[/vba]
К сообщению приложен файл: 6625847.xls(42.0 Kb)


(_)Õvõ(_)
 
Ответить
Сообщениееще вариант[vba]
Код
Sub xx()
    With Application
        .ScreenUpdating = 0: .EnableEvents = 0: .DisplayAlerts = False
        Open ActiveWorkbook.Path & "\8037208.txt" For Input As #1
        With GetObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
            .SetText Input$(LOF(1), 1)
            .PutInClipboard
        End With
        Close #1
        With [C5:F5]
            Range(.Cells, .End(xlDown)).ClearContents
            .Cells(1).PasteSpecial xlPasteAll
            .Copy
        End With
        .CutCopyMode = 0
        .ScreenUpdating = 1: .EnableEvents = 1: .DisplayAlerts = 1
    End With
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 15.11.2018 в 15:01
rotten41 Дата: Пятница, 16.11.2018, 21:07 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 152
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
krosav4ig, тоже подойдет.
Благодарю.
 
Ответить
Сообщениеkrosav4ig, тоже подойдет.
Благодарю.

Автор - rotten41
Дата добавления - 16.11.2018 в 21:07
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Вставка текста из txt на лист - начиная с опред. ячейки (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2018 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!