테이블의 보이는 행만 같은 통합 문서의 별도 워크 시트에 복사하려고합니다. 나는 테이블을 다루는 'ListObject'접근법을 사용하는 데 약간 새로운 점이있다. (몇 가지 이유로, 테이블을 직접 참조하는 것이 나머지 모듈의 관점에서 더 나은 접근법이다.)Excel VBA - 보이는 테이블 행만 복사하여 붙여 넣기
다음은 나의 최선의 시도이다 내가 그것을 실행할 때 '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
사용'.PasteSpecial xlPasteAll' 대신 .Paste' –
'의를 음, 많은 감사합니다! – AdamDynamic