gpt4 book ai didi

vba - Excel VBA - 仅复制和粘贴可见的表格行

转载 作者:行者123 更新时间:2023-12-02 07:21:36 24 4
gpt4 key购买 nike

我试图仅将表中的可见行复制到同一工作簿中的单独工作表中。我对使用“ListObject”方法处理表有点陌生(出于某些原因,就模块的其余部分而言,直接引用表是更好的方法)

下面是我最好的尝试,当我运行它时,我在 'Sheets("Sheet8").Range("A1").Paste' 上收到'运行时错误'438''行,我已经在互联网上搜索了一个小时,现在试图找出我做错了什么,我需要如何重新措辞,以便将复制的数据粘贴到另一个工作表/表格中?任何帮助将不胜感激!

谢谢

亚当

Private Sub CopyVisibleAreaOfTable(ByVal TableName As String)

Const FN_NAME As String = "CopyVisibleAreaOfTable"
On Error GoTo catch

Dim TargetTable As ListObject
Dim NumberOfAreas As Long

Set TargetTable = Sheets("Adj1").ListObjects(TableName)

' Check that there are fewer than 8192 seperate areas
With TargetTable.ListColumns(1).Range
NumberOfAreas = .SpecialCells(xlCellTypeVisible).Areas(1).Cells.Count
Debug.Print NumberOfAreas
End With

If NumberOfAreas = 0 Then
'Do something to trigger an error message
Else

TargetTable.Range.SpecialCells(xlCellTypeVisible).Copy
Sheets("Sheet8").Range("A1").Paste
Application.CutCopyMode = False

End If

finally:
Exit Sub

catch:
Call ErrorReport(FN_NAME, True, Err.Number, Err.Description, "Table Name: " & TableName)
Resume finally

End Sub

最佳答案

将目标指定为 .Copy 方法的一部分:

TargetTable.Range.SpecialCells(xlCellTypeVisible).Copy _
Destination:=Sheets("Sheet8").Range("A1")

关于vba - Excel VBA - 仅复制和粘贴可见的表格行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16039774/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com