For my customised Excel ribbon, I have a dropdown that contains three options; these are hardcoded into the XML file as labels. I want to display the label value of the selected dropdown item in cell L9 of Sheet1, eg. Sheet1.
At the moment, I am using the onAction
callback to output the item id
of the dropdown selection. I have tried various things with the help of Microsoft's documentation, including using the getLabel
and getItemLabel
callbacks, but I'm struggling to understand how to implement either.
customUI14.xml
<!--Dropdown-->
<group id="group5" label="Dropdowns">
<dropDown id="dropDown1" label="Dropdown Box" onAction="DDonAction" >
<item id="item1" label="Sheet1" imageMso ="HappyFace" />
<item id="item2" label="Sheet2" imageMso ="FontColorMoreColorsDialog" />
<item id="item3" label="Sheet3" imageMso ="NewDistributionList" />
</dropDown>
</group>
VBA
'Dropdown
Sub DDonAction(control As IRibbonControl, id As String, Index As Integer)
Select Case Index
Case 0
Sheet1.Activate
Case 1
Sheet2.Activate
Case 2
Sheet3.Activate
End Select
Sheet1.Range("L9").Value = id
End Sub
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…