Страницы: 1
RSS
Экспорт данных из Excel в текстовый формат
 
Приветствую всех, столкнулся с проблемой быстрого извлечения части данных одной таблицы в тестовый формат. Имеется большая таблица, её нужно извлечь несколькими текстовыми документами, разделитель между разными текстовыми документами - год - первый столбец, т.е. есть массив данных с годом-месяцем-днем и дальше данные, вот по первому столбцу с годами необходимо извлекать данные в тестовый документ, для 1960 года один текстовый документ, для 1961 года другой текстовый документ и так далее, кто может, помогите, пожалуйста!
 
макрос нужно писать (если не хотите вручную разбивать таблицу на несколько)

чтобы написать макрос, нужно:
1) пример таблицы Excel
2) пример текстового файла
3) пояснение, какие имена давать файлам
 
Текстовый файл должен содержать только столбцы B C D E , год не нужен в текстовом файле, название для текстового документа надо задать как название документа Excel, т.е. "23465", а расширение этого документа (тип файла) должно быть ".1966" - соответствующее году в итоге вот такой файл должен быть на выходе "23465.1966"!

Файлы удалены: превышение допустимого размера вложения [МОДЕРАТОР]
 
вот ещё раз те файлы.
текстовый файл правда назван неправильно, должен быть "23465.1966", где ".1966" тип файла
 
gaffer, пробуйте
Код
Sub ExportY()
Dim a As Range, p$
  p = ActiveWorkbook.FullName
  p = Left(p, InStrRev(p, "."))
  Application.ScreenUpdating = False
  Rows(1).Insert
  Range("A1:E1") = Split("a b c d e")
  Range("A1").Subtotal GroupBy:=1, Function:=xlCount, TotalList:=Array(5), _
      Replace:=True, PageBreaks:=False, SummaryBelowData:=True
  Rows(1).Delete
  For Each a In Range("B:B").SpecialCells(xlCellTypeConstants).Areas
    With Workbooks.Add(xlWBATWorksheet)
      a.Resize(, 4).Copy .Sheets(1).Range("A1")
      .SaveAs Filename:=p & a.Cells(1).Offset(, -1), FileFormat:=xlText, CreateBackup:=False, local:=False
      .Close False
    End With
  Next
  Selection.RemoveSubtotal
  Application.ScreenUpdating = True
End Sub
Изменено: Казанский - 17.10.2016 09:08:17
 
Спасибо!
Изменено: gaffer - 17.10.2016 15:47:52
 
Все нормально, спасибо.
Изменено: gaffer - 17.10.2016 15:47:27
Страницы: 1
Читают тему
Наверх