2

我在文件 A 中有一个 excel 表。行数和列数每次都不同。我必须将表从文件 A 中的这个 excel 表复制到另一个文件 B。我正在尝试编写一个 VBA,以便每次打开文件 B 时。名为“XYZ”的表被刷新。我可以轻松复制内容,但复制标题是个问题。这没用。我试图保持标题静态(如下面的脚本)并仅复制标题下方的数据,但这并不能解决我的问题,因为可以添加或减少标题。我还尝试删除当前表并复制新表,但在这种情况下,我会根据文件 B 的表 X 松开我在其他表上设置的 MACros。

子刷新()

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
4

1 回答 1

0

我有一个问题,你没有在你的脚本中处理。在我的情况下,标题正在改变。ActiveWorkbook.Range("XYZ[#All]").Copy 可以使用,但是当我将其复制到目标文件时,它不会覆盖目标文件中的现有表。在我的要求中,它必须覆盖。否则,我在目标文件的其他工作表中的宏会显示错误 #REF 。我也尝试先删除所有数据然后粘贴,但即使这样我也收到错误#REF

于 2014-11-28T21:06:44.717 回答