Excel - 比较两个文件?

时间:2011-04-29 08:52:10

标签: excel excel-2007 hyperlink

我正在尝试将两本Excel书籍链接在一起。它们是彼此的精确副本,但如果您编辑其中任何一个,则另一个也应该更新。我知道你可以使用链接功能来做到这一点,但这是单向的。我需要知道如何在两个方向上做到这一点。

Book1.xls
   Sheet1
      A1: Hello!
      A2: Goodbye!

Book2.xls
   Sheet1
      A1: Hello!
      A2: Goodbye!

现在如果我在Book2和Book1之间有链接,Book1中编辑的任何内容都将在Book2中更改,但反之亦然!

谢谢!

1 个答案:

答案 0 :(得分:1)

一个问题 - 如果文件是精确的副本,为什么有2个副本?

一个可能的示例是使用Workbook_SheetChange事件,以便对工作簿的任何更改都会更新其他工作簿。但是,这实际上只有在您更改值而不是格式等时才有效。

例如2本练习册Book1.xlsm& Book2.xlsm,在THISWORKBOOK对象的Book1.xlsm中输入

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim MyObj As Object, strCopyto As String

 strCopyto = "C:\Users\osknows\Desktop\Book2.xlsm"

 Set MyObj = GetObject(strCopyto)
 MyObj.Parent.Windows(MyObj.Name).Visible = True
 Target.Copy Destination:=MyObj.Sheets(Sh.Name).Range(Target.Address)
 MyObj.Close savechanges:=True

end sub

在Book2.xlsm中执行相同操作,但更改strCopyto = "C:\Users\osknows\Desktop\Book1.xlsm"

这是可以做的很多方法之一