已从DropDown列表中选择的值在多个工作表上动态更新

时间:2018-02-23 05:56:02

标签: excel vba excel-vba

在谷歌搜索了2天并试图弄清楚自己失败之后,我来到这里寻求帮助。 我想要解决的问题:我有多个工作表,其中是下拉列表中可选单元格的范围,以及DropDown列表源所在的1个工作表。我想要的是从下拉列表中已经选择的单元格动态更新,如果我从下拉列表中的源更改它。我已经在一张纸上找到了一个像魅力一样的代码。

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
Dim count_cells As Integer
Dim new_value As String
Dim old_value As String
Dim rng As Range
For count_cells = 1 To Range("I1").CurrentRegion.Rows.Count - 1
    Set rng = Worksheets("Part Database").Range("C3:C11")
    If Intersect(Target, Range("I" & count_cells + 1)) Is Nothing Then
    Else
        Application.EnableEvents = False
        new_value = Target.Value
        Application.Undo
        old_value = Target.Value
        Target.Value = new_value
        rng.Replace What:=old_value, Replacement:=new_value
        Target.Select
    End If
Next count_cells
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub

代码完美无缺,但我想让它在多张纸上工作,它甚至可能吗? 我有以下表格:

-Part数据库(它已在C3范围内工作:C11)

-Input(下拉列表的源位于代码范围(" I1")中,即源DropDown列表的标题,其下方有可选值I2: I10但随着我添加更多内容而不断增长,代码也粘贴在这个"输入"表格上

-APM2

-APM3

-APM4等......

是否可以更改代码,以便不仅可以在范围内使用(部件数据库!$ C $ 3:$ C $ 11),还可以使用APM2!$ D $ 5:$ D $ 11,APM! 3 $ķ$ 8:$ķ$ 15 .... 我在这里先向您的帮助表示感谢! 为了清理问题,我制作了一本工作手册来证明这个问题。 https://ufile.io/pu9jx

0 个答案:

没有答案