我想连接两个 Excel 表之间的两个单元格,并且如果两个单元格中的任意一个单元格中都输入了数据,则更新这两个单元格。
- 工作表 1 中的单元格 A4。
- 工作表 2 中的单元格 B7。
假设在工作表 1 中的单元格 A4 中输入了 100,则工作表 2 中的 B7 应该更新为 100。
如果工作表 2 中的单元格 B7 为 80,则工作表 1 中的单元格 A4 也应该是 80。
我正在使用 Excel 2013 和 2016两个版本。
答案1
如果您想要在单元格或单元格区域、工作表甚至工作簿之间建立动态链接以进行双向数据输入,那么 VBA 是唯一的解决方案。
您需要在两个表中使用以下 VBA 代码:
怎么运行的:
- 按下Alt+F11 或右键单击工作表电视背景。
- 从弹出菜单中单击“查看代码”。
- 在 VB 编辑器中复制并粘贴相应表格。
- 将工作簿另存为米acro 已启用。
在工作表 1 中:
Private Sub Worksheet_change(ByVal Target As Range)
If Not Intersect(Target, Range("A4")) Is Nothing Then
If Target = Range("A4") Then
Sheets("Sheet2").Range("B7").Value = Target.Value
End If
End If
End Sub
在工作表 2 中:
Private Sub Worksheet_change(ByVal Target As Range)
If Not Intersect(Target, Range("B7")) Is Nothing Then
If Target = Range("B7") Then
If Sheets("Sheet1").Range("A4").Value <> Target.Value Then
Sheets("Sheet1").Range("A4").Value = Target.Value
End If
End If
End If
End Sub
注意:
- 如果两个单元格中的值不相似,则 Sheet 2 中的代码将更新 Sheet 1。
- 如果你不需要这个,只需删除 If 语句行。