Копировать из одной книги в другую с указанными датами - PullRequest
0 голосов
/ 28 мая 2020

Я пытаюсь ввести даты, а затем отфильтровать данные по этим двум датам. Мне удалось выяснить, как выбрать желаемые даты, но с фильтрацией не повезло. Кроме того, есть ли шанс, что я могу очистить все фильтры перед фильтром по дате? Этой книгой пользуется множество людей, и я хочу убедиться, что фильтруется только дата.

Ошибка: Ошибка времени выполнения '1004' Ошибка метода автофильтрации класса Range Моя проблема связана с строкой rngfull .Autofilter

Вот мой код:

  Public Sub CreateSubsetWorkbook(StartDate As String, EndDate As String)

        Dim wbkInput As Workbook, wbkOutput As Workbook
        Dim wksInput As Worksheet, wks As Worksheet, wksOutput As Worksheet
        Dim lngLastRow As Long, lngLastCol As Long, lngDateCol As Long
        Dim rngFull As Range, rngResult As Range, rngTarget As Range
        Dim Lastrow As Integer
        lngDateCol = 2
        Set wbkOutput = ThisWorkbook
        Set wbkInput = Workbooks.Open("f:\Sharta\red files\DBr\(NEW SERVER) with Macro.xlsm")
        Set wksInput = wbkInput.Sheets("Sheet1")

            With wksInput
                Set wksOutput = wbkOutput.Sheets("Data Dump")
                Set rngTarget = wksOutput.Cells(1, 1)

                lngLastRow = .Cells.Find(What:="*", LookIn:=xlFormulas, _
                                     SearchOrder:=xlByRows, _
                                     SearchDirection:=xlPrevious).Row
                lngLastCol = .Cells.Find(What:="*", LookIn:=xlFormulas, _
                                     SearchOrder:=xlByColumns, _
                                     SearchDirection:=xlPrevious).Column
                Set rngFull = .Range(.Cells(1, 1), .Cells(lngLastRow, lngLastCol))

                With rngFull
                    Range.AutoFilter Field:=lngDateCol, _
                                Criteria1:=">=" & StartDate, _
                                Criteria2:="<=" & EndDate

                    Set rngResult = rngFull.SpecialCells(xlCellTypeVisible)
                    rngResult.Copy Destination:=rngTarget
                End With

                .AutoFilterMode = False
                If .FilterMode = True Then
                    .ShowAllData
                End If
            End With


        wbkInput.Close Savechanges:=False
        wksOutput.Activate

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