簡體   English   中英

將過濾的記錄復制到新的臨時表

[英]Copy filtered records to a new temporary sheet

我正在嘗試將一些過濾的記錄復制到同一Excel中的新工作表中。 但是,它只是復制標題而不是記錄。 請提出建議。 我已將nc_it_an_sub定義為放置自動過濾器后顯示的記錄數。

Workbooks("WB1.xlsx").Worksheets("Sheet1").Range("A2:N" & nc_it_an_sub).Select
Selection.Copy
Workbooks("WB1.xlsx").Worksheets("Temp Sheet").Range("A1").PasteSpecial Paste:=xlPasteValues

嘗試這樣:

nc_it_an_sub = 10
Workbooks("WB1.xlsx").Worksheets("Sheet1").Range("A2:N" & nc_it_an_sub).Select
Selection.Copy
Workbooks("WB1.xlsx").Worksheets("Temp Sheet").Range("A1").PasteSpecial _
                                                         Paste:=xlPasteValues

如果nc_it_an_sub ,則您的情況下nc_it_an_sub的值為1 ,應該對此進行修復。


通常,不需要使用“ SelectCopy范圍:

Workbooks("WB1.xlsx").Worksheets("Sheet1").Range("A2:N" & nc_it_an_sub).Copy
Workbooks("WB1.xlsx").Worksheets("Temp Sheet").Range("A1").PasteSpecial _
                                                         Paste:=xlPasteValues

甚至作為1班輪:

Worksheets("Source").Columns("A:D").Copy Destination:=Worksheets("Target").Range("a1")

您可以只復制可見的單元格。

作為示例,將此代碼添加到工作表模塊。
這段代碼不是必需的-雙擊單元格時會創建一個過濾器。
它將當前區域過濾為您雙擊的值。

Private rCellClicked As Range

'Code to create a filtered range.  
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    With ActiveSheet
        If .FilterMode Then
            .ShowAllData
            rCellClicked.Select
        Else
            With Target
                .CurrentRegion.AutoFilter Field:=.Column - .CurrentRegion.Column + 1, Criteria1:=.Value
            End With
            Set rCellClicked = Target

            'This procedure will copy the cells to a new sheet.
            CopyFiltered Target.CurrentRegion

        End If
    End With

End Sub  

此過程將篩選后的列表(包括標題)中的可見單元格復制到新工作表中的區域A1中:

Public Sub CopyFiltered(FilteredRange As Range)

    Dim wrkSht As Worksheet

    Set wrkSht = ThisWorkbook.Worksheets.Add

    FilteredRange.SpecialCells(xlCellTypeVisible).Copy Destination:=wrkSht.Range("A1")

End Sub

暫無
暫無

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

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