Excel Office Fluent功能区-填充ComboBox OnLoad

时间:2018-07-14 21:46:17

标签: excel controls ribbon fluent

我正在为Excel工作簿开发自定义功能区。我目前在工作表(例如组合框)中有ActiveX对象。在ThisWorkbook中,我执行代码以填充组合框。我正在努力从工作表对象过渡,而是在自定义功能区中使用对象。

加载工作簿后,是否可以将列表内容推送到功能区组合框并刷新(使之无效)功能区以显示结果?如果是这样,那么查看这样做的示例将很有帮助。

如果有人需要查看特定的代码,我可以进行相应的更新。谢谢

更新-缩小问题范围

按照我发现的指南,我可以得到一个回调来触发OnLoad,现在我想了解如何获取查询结果以填充列表。我有查询结果,但是当我将它们分配给returnVal时,它不起作用(无错误)。这是我的回调:

'Callback for SWcboFilterList getItemLabel
Public Sub SWcboFilterList_getItemLabel(control As IRibbonControl, index As 
Integer, ByRef returnedVal)

Dim sSQL As String
sSQL = "SELECT [PGROUP] FROM [tblProperties] GROUP BY [PGROUP] HAVING ((([P_GROUP]) Is Not Null));"

adoQuery sSQL

returnedVal = myResults.GetRows

myResults.Close
End Sub

'Callback for SWcboFilterList getItemCount
Public Sub SWcboFilterList_getItemCount(control As IRibbonControl, ByRef 
returnedVal)

Dim sSQL As String
sSQL = "SELECT [PGROUP] FROM [tblProperties] GROUP BY [PGROUP] HAVING ((([P_GROUP]) Is Not Null));"

adoQuery sSQL
returnedVal = myResults.RecordCount

myResults.Close
End Sub

如果我分别将returnVal设置为“ Test”和1,则它可以工作。那么,如何格式化数据才能使功能区中的下拉菜单接受数据呢?

谢谢

0 个答案:

没有答案