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

Вход

Регистрация

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

 

= Мир MS Excel/Конвертация таблицы Excel в текст в формате txt. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Конвертация таблицы Excel в текст в формате txt. (сохранение таблиц в формате текст)
Конвертация таблицы Excel в текст в формате txt.
A8208 Дата: Вторник, 25.01.2011, 10:15 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация: 0 ±
Замечаний: 0% ±

Здравствуйте.
У меня не получается выполнить следующую операцию. Необходимо сохранить фиксированные области на одном листе в файлы формате текст (.txt) с кодировкой ansi с указанным в примере расширением (.obl). Сохраняемые файлы должны находиться во вложенной папке с наименованием «Раскрой» вне зависимости от вложенности файла источника. Имена сохраняемых файлов необходимо задавать из ячейки над сохраняемой таблицей (зелённая заливка).
Вариант сохранения файлов с кодировкой на юникод.
На данном листе Excel необходимо выполнить кнопку запуска макроса выполняющего создание и сохранение файлов.
К сообщению приложен файл: 5253839.xlsx (11.4 Kb) · _16.obl (0.3 Kb)
 
Ответить
СообщениеЗдравствуйте.
У меня не получается выполнить следующую операцию. Необходимо сохранить фиксированные области на одном листе в файлы формате текст (.txt) с кодировкой ansi с указанным в примере расширением (.obl). Сохраняемые файлы должны находиться во вложенной папке с наименованием «Раскрой» вне зависимости от вложенности файла источника. Имена сохраняемых файлов необходимо задавать из ячейки над сохраняемой таблицей (зелённая заливка).
Вариант сохранения файлов с кодировкой на юникод.
На данном листе Excel необходимо выполнить кнопку запуска макроса выполняющего создание и сохранение файлов.

Автор - A8208
Дата добавления - 25.01.2011 в 10:15
Саня Дата: Вторник, 25.01.2011, 12:34 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
шапку и первый с последним столбцом не надо?
 
Ответить
Сообщениешапку и первый с последним столбцом не надо?

Автор - Саня
Дата добавления - 25.01.2011 в 12:34
A8208 Дата: Вторник, 25.01.2011, 13:05 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация: 0 ±
Замечаний: 0% ±

Да. Их не надо.
 
Ответить
СообщениеДа. Их не надо.

Автор - A8208
Дата добавления - 25.01.2011 в 13:05
Саня Дата: Вторник, 25.01.2011, 15:30 | Сообщение № 4
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
посмотри
К сообщению приложен файл: 3813832.xlsm (24.4 Kb)
 
Ответить
Сообщениепосмотри

Автор - Саня
Дата добавления - 25.01.2011 в 15:30
A8208 Дата: Вторник, 25.01.2011, 16:25 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация: 0 ±
Замечаний: 0% ±

Работает только если вручную создать папку "Раскрой" автоматм она не создаётся
Выдаёт ошибку в строке
Open txtFileName For Output As #1
 
Ответить
СообщениеРаботает только если вручную создать папку "Раскрой" автоматм она не создаётся
Выдаёт ошибку в строке
Open txtFileName For Output As #1

Автор - A8208
Дата добавления - 25.01.2011 в 16:25
Саня Дата: Вторник, 25.01.2011, 16:31 | Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
надо описывать проблему предельно детально...
[vba]
Код
Sub main()
     Dim r As Range, a As Range
     Dim b As Long, e As Long

     Set r = Columns("D:D").SpecialCells(xlCellTypeConstants, 23)
       
     On Error Resume Next
     MkDir ThisWorkbook.Path & "\Раскрой\"
     On Error GoTo 0
       
     For Each a In r.Areas
...
[/vba]
 
Ответить
Сообщениенадо описывать проблему предельно детально...
[vba]
Код
Sub main()
     Dim r As Range, a As Range
     Dim b As Long, e As Long

     Set r = Columns("D:D").SpecialCells(xlCellTypeConstants, 23)
       
     On Error Resume Next
     MkDir ThisWorkbook.Path & "\Раскрой\"
     On Error GoTo 0
       
     For Each a In r.Areas
...
[/vba]

Автор - Саня
Дата добавления - 25.01.2011 в 16:31
A8208 Дата: Вторник, 25.01.2011, 18:15 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация: 0 ±
Замечаний: 0% ±

Спасибо!
 
Ответить
СообщениеСпасибо!

Автор - A8208
Дата добавления - 25.01.2011 в 18:15
A8208 Дата: Вторник, 25.01.2011, 18:19 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация: 0 ±
Замечаний: 0% ±

а как задать кодировку юникод сохраняемому файлу?
 
Ответить
Сообщениеа как задать кодировку юникод сохраняемому файлу?

Автор - A8208
Дата добавления - 25.01.2011 в 18:19
A8208 Дата: Вторник, 25.01.2011, 18:56 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация: 0 ±
Замечаний: 0% ±

Как удалить последние две строчки в получаемых файлах? Они мешают считыванию другой программой.
 
Ответить
СообщениеКак удалить последние две строчки в получаемых файлах? Они мешают считыванию другой программой.

Автор - A8208
Дата добавления - 25.01.2011 в 18:56
A8208 Дата: Среда, 26.01.2011, 08:55 | Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация: 0 ±
Замечаний: 0% ±

последние 2 строчки в этих файлах не содержат данных. Как-будто два раза нажали "Enter" sad
 
Ответить
Сообщениепоследние 2 строчки в этих файлах не содержат данных. Как-будто два раза нажали "Enter" sad

Автор - A8208
Дата добавления - 26.01.2011 в 08:55
Саня Дата: Среда, 26.01.2011, 10:47 | Сообщение № 11
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
[vba]
Код
Sub ExportFromRangeToTxt(rng As Range, txtFileName As String)
     Dim NumRows As Long, NumCols As Integer
     Dim r As Long, c As Integer, Data As String

     With rng
        NumCols = .Columns.Count
        NumRows = .Rows.Count

        Open txtFileName For Output As #1
        For r = 1 To NumRows
           For c = 1 To NumCols
              Data = Data & .Cells(r, c).Value
              If c < NumCols Then
                 Data = Data & vbTab
              Else
                 If r < NumRows Then Data = Data & vbNewLine
              End If
           Next c
        Next r
        Print #1, Data;
        Close #1
     End With
End Sub
[/vba]
 
Ответить
Сообщение[vba]
Код
Sub ExportFromRangeToTxt(rng As Range, txtFileName As String)
     Dim NumRows As Long, NumCols As Integer
     Dim r As Long, c As Integer, Data As String

     With rng
        NumCols = .Columns.Count
        NumRows = .Rows.Count

        Open txtFileName For Output As #1
        For r = 1 To NumRows
           For c = 1 To NumCols
              Data = Data & .Cells(r, c).Value
              If c < NumCols Then
                 Data = Data & vbTab
              Else
                 If r < NumRows Then Data = Data & vbNewLine
              End If
           Next c
        Next r
        Print #1, Data;
        Close #1
     End With
End Sub
[/vba]

Автор - Саня
Дата добавления - 26.01.2011 в 10:47
A8208 Дата: Среда, 26.01.2011, 12:18 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация: 0 ±
Замечаний: 0% ±

Спасибо. Всё работает smile . В юникод конвертировал
 
Ответить
СообщениеСпасибо. Всё работает smile . В юникод конвертировал

Автор - A8208
Дата добавления - 26.01.2011 в 12:18
Wizzards07 Дата: Воскресенье, 09.03.2014, 18:32 | Сообщение № 13
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день. У меня в принципе похожая задача - есть xls файл в котором на 10-15 листах есть данные в табличной форме (в примере всего два листа сделал), необходимо с помощью макроса переконвертировать данные в формат txt (в кодировке СР1251) по приложенному образцу, для последующего импортирования его в другое ПО.
К сообщению приложен файл: 4287661.xls (9.0 Kb) · 1000041853.txt (0.3 Kb)
 
Ответить
СообщениеДобрый день. У меня в принципе похожая задача - есть xls файл в котором на 10-15 листах есть данные в табличной форме (в примере всего два листа сделал), необходимо с помощью макроса переконвертировать данные в формат txt (в кодировке СР1251) по приложенному образцу, для последующего импортирования его в другое ПО.

Автор - Wizzards07
Дата добавления - 09.03.2014 в 18:32
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Конвертация таблицы Excel в текст в формате txt. (сохранение таблиц в формате текст)
  • Страница 1 из 1
  • 1
Поиск:

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