Я относительно новичок в VBA. Я работал над следующим кодом, который работал отлично, пока я не решил отфильтровать непробелы перед сохранением листа.
Идея состоит в том, чтобы сохранить мой лист по тому же пути после фильтрации любых пустых значений. Новый файл будет иметь значения только в CSV. Опять же, все это работает, за исключением случаев, когда речь идет о фильтрации данных и сохранении файла.
Теперь я получаю
"Ошибка времени выполнения 438 Объект не поддерживает это свойство или метод "
по коду ниже
ThisWorkbook.Sheets("SHEET1").SpecialCells(xlCellTypeVisible).Copy
Полный код
Private Sub CommandButton1_Click()
If Sheets("SHEET1").AutoFilterMode Then Sheets("SHEET1").AutoFilterMode = False
sDate = Format(Sheets("SHEET2").Range("F1"), "YYYY.MM.DD")
cell = "NAME - " & sDate
ThisWorkbook.Sheets("SHEET1").Range("A:C").AutoFilter Field:=2, Criteria1:="<>"
ThisWorkbook.Sheets("SHEET1").SpecialCells(xlCellTypeVisible).Copy
With ActiveSheet.UsedRange
.Value = .Value
End With
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & cell & ".csv", FileFormat:=xlCSV
End Sub