【问题标题】:Using INDEX & MATCH Function in a Userform Combobox在用户表单组合框中使用 INDEX 和 MATCH 函数
【发布时间】:2019-07-17 22:44:25
【问题描述】:

您好,我需要一些帮助才能开始这项工作。我有一个在工作表上效果很好的公式,但是我不知道如何将其转换为将为我填充组合框的 VBA 代码。

我已经尝试过了,它用 N/A 值而不是我想要的值填充了组合框:

 Dim ReturnVal As Variant

    ReturnVal = Evaluate("=INDEX('Teams'!B2:S21,MATCH(1,(""" & Me.Select_Team.Value & """ ='Teams'!B3:S3),0))")

    If Not IsError(ReturnVal) Then
        Me.Team_Leader.Value = ReturnVal
    Else
        Me.Team_Leader.Value = "N/A"
    End If

这是适用于 Excel 工作表的公式。

公式:

=INDEX(Teams!B2:S21,1,MATCH('Ticket Pools'!J6,Teams!B3:S3,0))

这会搜索团队的名称,并从某个范围内调出分配给他们的团队负责人。

用户窗体称为“Edit_Teams”,上面有一个组合框“Team_leader”,我希望在其中填充组合框。组合框已加载,所以我只使用:

Me.Team_Leader.Value = ReturnVal

有人可以帮忙吗?

【问题讨论】:

  • 范围大小不同。我怀疑这个公式在电子表格上是否有效。
  • 我认为你的索引范围内有一个额外的1'Teams'!B2:S21 应该是:'Teams'!B2:S2
  • ReturnVal = Evaluate("=INDEX('Teams'!B2:S2,MATCH(""" & Me.Select_Team.Value & """,'Teams'!B3:S3,0))")
  • 斯科特你是个传奇!

标签: excel vba combobox userform


【解决方案1】:
ReturnVal = Evaluate("=INDEX('Teams'!B2:S2,MATCH(""" & Me.Select_Team.Value & """,'Teams'!B3:S3,0))")

– Scott Craner(参考评论)

这行得通(以防有人需要复制它)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-09
    相关资源
    最近更新 更多