引用下拉列表其他工作表中的值

时间:2015-12-22 10:11:28

标签: excel excel-formula excel-2010

我有一张包含多个下拉列表的工作表,可以选择某个文本值。 当我在另一张纸中引用这些单元格时,我得到的数字与所选择的值相对应,但不是值本身,例如。我在下拉列表中选择了一个名称,它是该列表中的第二个值,因此当我引用此单元格时,我在另一个表单中得到“2”。

我尝试过Value功能,但无济于事。 如何在此新工作表中显示实际值,而不是检索列表中的值?

感谢您的时间。

1 个答案:

答案 0 :(得分:1)

我假设您正在使用表单组合框控件 - 您已在控件属性中输入了输入范围和单元格链接。

使用INDEX公式返回该项目。 例如,如果您的输入范围是$ B $ 1:$ B $ 4且您的单元格链接是$ B $ 11,则此公式将返回值:=INDEX($B$1:$B$4,$B$11)

如果你的链接单元格显示3,公式就是说“从输入范围列表中返回第三项”。

要通过VBA代码返回值,请将此代码添加到普通模块:

Sub Dropdown_OnChange()

    Dim dd As DropDown

    Set dd = ActiveSheet.Shapes(Application.Caller).OLEFormat.Object

    MsgBox dd.List(dd.ListIndex)

End Sub

右键单击您的控件,选择“指定宏”并选择上面的代码宏。该代码适用于所有下拉框 - Application.Caller返回触发事件的下拉列表 NB:Return the selected text from a dropdown box

复制的代码