将变量字符串插入公式

时间:2017-04-06 18:11:24

标签: excel vba excel-vba

已经有一段时间了,并且似乎无法弄明白。我觉得我几乎就在那里,多亏了这里的不同帖子。这是我想要做的:

我有一个依赖列表,我想根据第一个列表的选择将其更改为第一个值。我在这里找到了一个代码,我修改为我的工作表,但我必须更改第一个列表中的所有名称以符合定义名称规则(即没有空格)。这是有效的,我可以把它留在那,但我更喜欢在我的列表中有空格。每当我使用我用来更改列表中显示的名称的公式时,VBA脚本就不再有效。我觉得这是因为它没有看到目标细胞的变化,虽然值正在改变,但细胞中的公式却没有。这是一个准确的陈述吗?如果是这样,我可以改变什么使它按照我想要的方式工作?现在,依赖列表正在运行=INDIRECT("$B$5),但我希望它运行=INDIRECT('Store Data'!$A$23),其中包含VLOOKUP公式。

这是我现在使用的VBA脚本:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng(1) As Range, rng1 As Range
Set rng(0) = Range("B5") 'your primary selection
Set rng(1) = Range("G5") 'your secondary selection range
Application.EnableEvents = False
If Not Intersect(Target, rng(0)) Is Nothing Then 'if you have changed your primary selection
    For Each rng1 In rng(1) 'each cell in your secondary selection
        i = i + 1
        rng1 = Worksheets("SD Names").Range("" & rng(0).Value2)(i, 1) 'gets changed to the nth value in the indirect reference of the primary selection ("TeamA" 's second row is "MemberA2" for example)
    Next
End If
Application.EnableEvents = True
End Sub

希望这是足够的细节,谢谢你的帮助!

0 个答案:

没有答案