Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel vba将未高亮显示的单元格移动到其他图纸_Excel_Vba - Fatal编程技术网

Excel vba将未高亮显示的单元格移动到其他图纸

Excel vba将未高亮显示的单元格移动到其他图纸,excel,vba,Excel,Vba,我有两张床单。如果第1页中的W列未高亮显示,则需要将其复制并粘贴到第2页的最后一行。当有新项目要复制时,此代码工作正常。但是当没有 取消填充W列中的(xlFilterNoFill)单元格,然后它会将所有高亮显示的数据移动到sheet2,这是我不想要的 Option Explicit Sub Addnewitem() Dim ws_NewItem As Worksheet Set ws_NewItem = Worksheets("new item") Dim LastRow

我有两张床单。如果第1页中的W列未高亮显示,则需要将其复制并粘贴到第2页的最后一行。当有新项目要复制时,此代码工作正常。但是当没有 取消填充W列中的(xlFilterNoFill)单元格,然后它会将所有高亮显示的数据移动到sheet2,这是我不想要的

Option Explicit
Sub Addnewitem()

Dim ws_NewItem As Worksheet
Set ws_NewItem = Worksheets("new item")

Dim LastRow As Integer
    With ws_NewItem
        LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
    End With

    ws_NewItem.Range("$A$1:$W$" & LastRow).AutoFilter Field:=23, Operator:=xlFilterNoFill
    
    
    With ws_NewItem.AutoFilter.Range
    .Offset(1, 0).Resize(.Rows.Count - 1).Copy
    End With
    
    
With Sheets("Sheet 2")
    .Cells(.Rows.Count, "A").End(xlUp).Offset(1, 0).PasteSpecial
End With
    
    
End Sub

您只需要复制可见的单元格。见@Pᴇʜ如果我使用
.SpecialCells(xlCellTypeVisible).Copy
,标题也将被复制,如何跳过标题?请在提问之前做一些研究:这些问题被问了一百次。