簡體   English   中英

復制一系列過濾的單元格

[英]Copy a range of filtered cells

我在將數據從工作簿復制到另一個工作簿時遇到問題。 主文件main_sheet從另一個工作簿的工作表中收集數據,該工作簿按月和年更改其名稱,因此當前Workbookdecember18 (它始終受密碼保護)。

Workbookdecember18 ,我必須首先按0過濾code列,然后將data3列從AZ進行排序。 然后,我必須從第一20行復制data1data2data3main_sheet從另一個工作簿。

這是源表Workbookdecember18

這是桌子

這是另一個帶有main_sheet工作簿(它通常只有 20 行):

在此處輸入圖片說明

這是我寫的代碼,但它不起作用:

Windows("Workbookdecember18").Activate
Sheets("1").Select
ActiveSheet.Unprotect
Range("A2").Select
Selection.AutoFilter
ActiveSheet.Range("$A$2:$CH$2402").AutoFilter Field:=1, Criteria1:="0"
Range("D3").Select
ActiveWorkbook.Worksheets("1").AutoFilter.Sort.SortFields _
    .Clear
ActiveWorkbook.Worksheets("1").AutoFilter.Sort.SortFields _
    .Add Key:=Range(D3"), SortOn:=xlSortOnValues, Order:=xlDescending, _
    DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("1").AutoFilter.Sort
    .Header = xlYes
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
End With
Range("A2:D30").Select
Selection.Copy
Windows("Another workbook").Activate
Range("A2:D30").Select
ActiveSheet.Paste

第一個問題是我必須讓它在每個月的名稱更改時識別工作簿,並讓它選擇我需要的 20 行(即使最后一個在過濾后可能位於第 200 行)。

在接下來的三到四個星期內, "Workbook" & Format(Date, "mmmmyy")應該在 US-EN 區域設置中生成WorkbookDecember18

Option Explicit

Sub filterAndTransfer()
    Dim target As Range

    Windows("Another workbook").Activate

    With Worksheets("sheet1")
        Set target = .Cells(.Rows.Count, "A").End(xlUp).Offset(1, 0)
    End With

    Windows("Workbook" & Format(Date, "mmmmyy")).Activate

    With Worksheet("1")
        .Unprotect
        If .AutoFilterMode Then .AutoFilterMode = False
        With .Cells(1, "A").CurrentRegion
            .Sort Key1:=.Cells(1, "D"), Order1:=xlDescending, DataOption1:=xlSortNormal, _
                  Orientation:=xlTopToBottom, Header:=xlYes
            .AutoFilter field:=1, Criteria1:=0
            .Offset(1, 0).Copy Destination:=target
        End With
        If .AutoFilterMode Then .AutoFilterMode = False
    End With

End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM