【发布时间】:2020-03-17 11:04:54
【问题描述】:
我有两个下拉列表,第二个取决于第一个的选择以从另一张表中获取相应的值。只要选择符合条件,我就可以调用单独的宏。
由于某种原因,它会读取所有条目并运行宏,但第一个条目“one”除外。知道为什么它不会读取第一个条目而是读取其他所有内容吗?
如果您想要调用“One”的代码,请告诉我,但是,我确实测试了该宏并且它运行良好,只是没有被调用..
这是我的编码(短版)。
Sub DataGrab()
Dim BC As Variant
Dim BT As Variant
BC = Range("A2")
BT = Range("B2")
'90's One
If BC = "_90s" And BT = "One" Then
Call Data90s1
'90's Two
ElseIf BC = "_90s" And BT = "Two" Then
Call Data90s2
'90's Three
ElseIf BC = "_90s" And BT = "Three" Then
Call Data90s3
'90's Four
ElseIf BC = "_90s" And BT = "Four" Then
Call Data90s4
End If
End Sub
谢谢
【问题讨论】:
-
您是否尝试过在不使用代码的情况下使下拉菜单依赖?使用命名范围和
indirect()您可以实现这一点...这并不能解决您的代码问题,但值得研究。 -
为了它,你试过
application.run("Data90s1"),而不是Call? -
我没有从您的帖子中看到...您是否通过 (F8) 来确保
_90s和One在条件内移动? -
我已经在页面上完成了 INDIRECT 连接。主下拉列表有 8 个不同的类别,然后第二个下拉列表有 4-14 个值,具体取决于第一个选择
-
我尝试运行应用程序,但它没有执行任何操作。我使用 F8 运行代码并读取第一行。它确实突出显示了代码的调用部分,直到它到达底部 .. 就像我说的那样,它确实调用了 "Two" 及以后的所有程序......它很奇怪