【问题标题】:Excel 2007 Ribbon combobox eventsExcel 2007 功能区组合框事件
【发布时间】:2012-06-22 21:59:17
【问题描述】:

在 Office 2007 中,我根据此处的材料在功能区上创建了一个组合框 Source Page 组合框工作正常,除了当我连续选择相同的项目时,在这种情况下 onChange 事件不会触发。有没有办法解决这个问题。似乎 onAction 事件不适用于 ComboBox。

我真的很感激任何帮助......

【问题讨论】:

  • 您的 XML 是否有与 OnChange 或 OnAction 事件相关联的宏?如果和OnChange绑定,连续选择同一个item就不会构成OnChange事件,不是吗?
  • @Scott 我不认为 OP 说组合框有 OnAction。也许您可以结合 GetEnabled 回调?我假设您希望在用户在 Excel 的其他地方完成某些操作后获得不改变的点击?只是猜测:)。
  • 哦,别在意最后一个想法。我将“GetEnabled”与“GetFocus”混淆了。
  • 我确实有一个绑定到 onChange 的宏,整个问题是当用户选择相同的选项两次时它没有触发。
  • 我明白了。我认为您可能需要重新考虑设计。听起来您像使用按钮一样使用组合框项目。也许动态菜单功能区项目会更好?

标签: vba combobox excel-2007 ribbon


【解决方案1】:

似乎两个组合框都只有一个“onChange”事件,所以除非我们更改选择,否则不会触发。也许下拉列表可能会起作用,因为它有一个“onAction”事件。作为一种解决方法,我在列表顶部放置了一个虚拟对象,可用于更改选择。我知道这是一个愚蠢的解决方法,但在我检查其他选项(如下拉列表)之前必须这样做。

【讨论】:

    【解决方案2】:

    在您选择项目后使用oRibbonCMM.InvalidateControl ("yourcontrolID"),我尚未对此进行测试,但我认为它应该可以工作

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-29
      • 1970-01-01
      相关资源
      最近更新 更多