Я создал книгу Excel (2010), которая берет информацию из различных CSV-файлов и помещает их в формат, который может быть понят программой планирования моего офиса. Используя макрос, который я нашел в Интернете, я могу сохранить каждый лист книги в виде отдельного CSV-файла, готового к импорту.
проблема в том, что многие строки книги по необходимости пусты, так как каждая строка посвящена блоку времени, который может или не может быть запланирован. Эти строки, заполненные нулями программа планировщика выдает ошибки. Это не фатальная проблема, так как" хорошие " записи расписания все еще импортируются, но это означает, что мне нужно пробраться через сотни ожидаемых ошибок, чтобы найти фактический ошибки.
мне было интересно, есть ли способ экспортировать только определенные строки листа в CSV-например, каждую строку, в которой содержимое столбца a не равно нулю.
для справки, вот макрос, который я в настоящее время использую, чтобы превратить листы в отдельные CSV-файлы.
Option Explicit
Public Sub WriteCSV()
Dim iFile As Integer
Dim strText As String, strFileName As String
Dim lngCol As Long, lngRow As Long
Dim wks As Worksheet
iFile = FreeFile()
For Each wks In ActiveWorkbook.Worksheets
If wks.Visible = xlSheetVisible Then
strFileName = ActiveWorkbook.Path & "" & wks.Name & ".csv"
Open strFileName For Output As #iFile
For lngRow = 1 To wks.UsedRange.Rows.Count
For lngCol = 1 To wks.UsedRange.Columns.Count
Print #iFile, wks.Cells(lngRow, lngCol).Text & ",";
Next lngCol
Print #iFile,
Next lngRow
Close #iFile
End If
Next wks
End Sub
спасибо!