更改每张纸的价值,并保持每张纸的价值
所以,这个信息
Sheet1 "A1" Sheet2 "A1" Sheet3 "A1"
现在我希望所有这些表单都具有相同的价值,哪个价值无关紧要。 但是我必须能够在每张纸上改变这个值。 例如:值为20。
Sheet1 A1's value = 20 Sheet2 A1's value = 20 Sheet3 A1's value = 20
现在我打开了工作表2,我把20到30改了。
Sheet1 A1's value = now 30 Sheet2 A1's value = now 30 Sheet3 A1's value = now 30
然后我注意到表3中的其他内容,并将此值更改为50
Sheet1 A1's value = now 50 Sheet2 A1's value = now 50 Sheet3 A1's value = now 50
作为最后一件事,我回到第一页,我看到我做了一个错误的计算,而不是50,它必须是40.所以我把值改为40。
Sheet1 A1's value = now 40 Sheet2 A1's value = now 40 Sheet3 A1's value = now 40
我怎样才能做到这一点? 我试图把它放在每一张纸上:
Private sub Worksheet_Change (Byval target as range)
但一旦我得到3张或更多的纸张, "this function is not defined"
我已经在网上search了4个小时了。 我尝试了不同的事情,但我不能正确的做到。
根据需要更改每张工作表
Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Target.Cells(1, 1) Then sheet2.Cells(1, 1) = Cells(1, 1) sheet3.Cells(1, 1) = Cells(1, 1) sheet4.Cells(1, 1) = Cells(1, 1) End If End Sub
很简单,只需强制每个跟踪图纸的Worksheet_Change
事件内的值更改:
Private Sub Worksheet_Change(ByVal Target As Range) '<-- in Sheet 1 Sheets("Sheet2").Cells(Target.Row, Target.Column).Value = Target.Value Sheets("Sheet3").Cells(Target.Row, Target.Column).Value = Target.Value End Sub
Private Sub Worksheet_Change(ByVal Target As Range) '<-- in Sheet 2 Sheets("Sheet1").Cells(Target.Row, Target.Column).Value = Target.Value Sheets("Sheet3").Cells(Target.Row, Target.Column).Value = Target.Value End Sub
Private Sub Worksheet_Change(ByVal Target As Range) '<-- in Sheet 3 Sheets("Sheet1").Cells(Target.Row, Target.Column).Value = Target.Value Sheets("Sheet2").Cells(Target.Row, Target.Column).Value = Target.Value End Sub
Ps上面的内容会改变三张纸上的每个单元格。 如果您只想要更新A1,则需要添加一个支票,这意味着:
If Target.Address = "$A$1" Then 'change values End If