excel - Excelテーブルコピー

原文 excel excel-tables vba

ファイルAにExcelテーブルがあります。
行と列の数は毎回異なります。
ファイルAのこのExcelテーブルから別のファイルBにテーブルをコピーする必要があります。ファイルBが開かれるたびにVBAを書き込もうとしています。 「XYZ」という名前のテーブルが更新されます。コンテンツは簡単にコピーできますが、ヘッダーのコピーに問題があります。それは動作しません。 (以下のスクリプトのように)ヘッダーを静的に保ち、ヘッダーの下のデータのみをコピーしようとしましたが、ヘッダーを追加または削減できるため、問題は解決しませんでした。
また、現在のテーブルを削除して新しいテーブルをコピーしようとしましたが、その場合、ファイルBのシートXに基づいて他のシートに設定したMACrosが失われます。

Sub Refresh()

Dim MyFile As String
Dim Filepath As String
Filepath = ActiveWorkbook.Path


MyFile = "File A"
Sheet1.Rows(3 & ":" & Sheet1.Rows.Count).ClearContents
Workbooks.Open (Filepath & MyFile)
Worksheets("X").Activate
ActiveSheet.ListObjects("XYZ").DataBodyRange.Copy
Application.DisplayAlerts = False
              ActiveWorkbook.Close


ActiveSheet.Paste Destination:=Worksheets("X").Range("A3")
End Sub
答え
あなたがスクリプトで扱っていないという問題があります。私の場合、ヘッダーは変更されています。
ActiveWorkbook.Range( "XYZ [#All]")。Copyを使用できますが、コピー先のファイルをコピーすると、コピー先のファイルの既存のテーブルが上書きされません。私の要件では、上書きする必要があります。そうでない場合、宛先ファイルの他のワークシートの私のマクロにエラー#REFが表示されます。最初にすべてのデータを削除してから貼り付けようとしましたが、それでもエラー#REFが発生しました
関連記事

vba - Excel VBA:「xxxxx.xlsmには、Excelマクロが有効なワークブックと互換性のない機能が含まれている可能性があります...」

excel - コントロールソースによって接続されたセルはその式を失い続けます

excel - InputBoxでのシート選択の問題

vba - VBAループロジックが必要

vba - VBAのTEMPテーブルに挿入する方法

excel - OutlookからExcelを開くときのVBA読み取り専用

c# - 同じ値を持つ別の名前空間があるときに、XAttributeに名前空間を指定するにはどうすればよいですか?

excel - Excel VBA、パブリックフォルダーであるOutlookフォルダーの設定

excel - ReDim PreserveがExcel VBAコードで機能しなくなった

html - インデックスを取得するための既存の正規表現の変更