Автофильтр VBA по дате с копированием и вставкой - PullRequest
0 голосов
/ 12 февраля 2019

У меня есть код для фильтрации по дате, введенной в ячейку - фильтр работает, выбирает правильную дату и сохраняет новый файл, как и ожидалось.

У меня есть две проблемы: а) При копировании и вставке не выбираются заголовок, а только данные (заголовки в строке 5, с данными ниже). Б) Автоматический фильтр в строке 5.перемещается в строку 1 после завершения макроса и дает msgBox.

Sub RunDailyReport()
'

    ' RunDailyReport Macro


    Dim Path As String
    Dim filename As String
    Dim dDate As Date
    Dim strDate As String
    Dim lDate As Long

    filename = Range("C2").Text

    With Application
        .EnableEvents = False
        .ScreenUpdating = False
    End With

    If IsDate(Range("C2")) Then
    dDate = Range("C2")
    dDate = DateSerial(Year(dDate), Month(dDate), Day(dDate))
    End If

    lDate = dDate
    Range("A5").AutoFilter
    Range("A5").AutoFilter Field:=1, Criteria1:=">=" & lDate, Operator:=xlAnd, Criteria2:="<" & lDate + 1


    Sheets("Master").Range("A4:J111111").Copy
    Workbooks.Add
    With ActiveSheet.Range("A1")
    .PasteSpecial xlPasteColumnWidths
    .PasteSpecial xlPasteValues
    .PasteSpecial xlPasteFormats
    End With
    Application.DisplayAlerts = False
    Cells.Select
    Cells.EntireColumn.AutoFit
    ActiveWindow.Zoom = 90
    ActiveWindow.Zoom = 80
    Cells.EntireColumn.AutoFit
    Selection.Font.Size = 11
    Columns("I:I").EntireColumn.AutoFit
    With Selection
        .WrapText = True
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
        End With
    ActiveWorkbook.SaveAs ("SAVEPATH\Fee Write Off " & filename & ".xlsx")
    ActiveWorkbook.Close
    Worksheets("Master").ShowAllData
    MsgBox ("Daily Report Saved - check the data has saved correctly before sending onwards")

    Application.EnableEvents = True

    End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...