kar*_*low 6 excel vba excel-vba
我试图从Excel表单上选择的下拉框中返回文本.我尝试了很多东西,而我得到的最接近的是返回索引号.还看了看:
我没有在该页面上找到可行的解决方案.我尝试过这样的事情:
ActiveSheet.DropDowns("DropDown1").Value
ActiveSheet.DropDowns("DropDown1").Text
ActiveSheet.DropDowns("DropDown1").SelectedValue
ActiveSheet.Shapes("DropDown1").Value
Run Code Online (Sandbox Code Playgroud)
等等
chr*_*sen 12
这将从DropDown返回当前选择
Sub TestDropdown()
Dim ws As Worksheet
Dim dd As DropDown
Set ws = ActiveSheet
Set dd = ws.Shapes("DropDown1").OLEFormat.Object
MsgBox dd.List(dd.ListIndex)
End Sub
Run Code Online (Sandbox Code Playgroud)
顺便说一句,分配给声明的变量Dim dd As DropDown
会给你智能感知dd
如果宏由下拉框本身调用,您也可以获取调用者名称.这样您就不必担心重命名下拉框了:)
Sub Dropdown_OnSelect()
Dim dd As DropDown
Set dd = ActiveSheet.Shapes(Application.Caller).OLEFormat.Object
MsgBox dd.List(dd.ListIndex)
End Sub
Run Code Online (Sandbox Code Playgroud)