我想制作一个 Excel 文件用于我公司的销售管理。我创建的 Excel 有 4 个工作表,每个工作表由不同的人员负责。
我想将这些工作表的第一列专门用于显示每个订单的状态,这样当有人更改工作表 1 中的状态时,其他 3 个工作表中的状态列也会更改。此外,当另一个人更改工作表 2 中的状态时,工作表 1、3 和 4 也会更改。
有可能吗?如果可以,我该怎么做?
答案1
将此代码放入 Sheet1 模块中(右键单击 Sheet1 选项卡并选择“查看代码”):
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rFrom as Range
If Target.Count = 1 Then
With Target.WorkSheet
Set rFrom = .Range("A:A")
If Not Intersect(Target, rFrom) Is Nothing Then
Application.EnableEvents = False
'Include next line Just in Case something happens
' You don't want to leave EnableEvents off
On Error Resume Next
rFrom.Copy Worksheets("Sheet2").Range("A:A")
If Err.Number <> 0 Then
Msgbox "Error Occurred"
End If
Application.EnableEvents = True
End If
End With
End If
End Sub
将 Sheet2 也设置为相同的值(显然要更改相应的地址)。将 Sheet2 更改为工作表1
仅更改一张工作表:
如果您希望另一张工作表中的单元格与 Sheet1 中 A 列的单元格成镜像,则输入 =Sheet1!A:A。
还另一个问题在超级上询问用户和你的类似,但不完全相同。