【问题标题】:VBA Populate Combobox with textVBA 用文本填充组合框
【发布时间】:2017-03-27 08:25:42
【问题描述】:

我知道这很简单,但一直在努力在 Google 或此网站上找到解决方案。我在工作簿中有一个子打开,它使用 .additem 例程填充组合框。这很有效,但实际上我想做的是告诉它显示下面的文本,以便我的模板在用户打开它时看起来很整洁。

如何不仅添加项目,还让组合框显示所需的文本?

Sheets("Data Summary").CB_Server.AddItem "Select Server"
Sheets("Data Summary").CB_Server.AddItem "UK1-SQL-T002"
Sheets("Data Summary").CB_Server.AddItem "UK1-SQL-T003"

Sheets("Data Summary").CB_Portfolio.AddItem "Select Portfolio"

因此,在本例中,我希望列出服务器,但希望在打开时显示 Select Server 和 Select Portfolio。

谢谢

【问题讨论】:

  • 组合框只会在您使用时显示列出的项目。否则,您的组合框将“最小化”并仅显示当前选定的值。如果要显示组合框中的所有项目(即使组合框未使用),则应更改为 ListBox。
  • 你没有找到.value吗?
  • 查看各种 cmet 在我看来,每个人对问题可能是什么都有不同的理解。也许 OP 可以提供一些更具描述性的细节或(甚至更好)所需结果的屏幕截图/模型?

标签: vba excel combobox


【解决方案1】:

正如@Nathan_Sav 评论的那样,您正在寻找组合框的.Value

所以在AddItem 行之后添加以下两行:

Sheets("Data Summary").CB_Server.Value = "Select Server"
Sheets("Data Summary").CB_Portfolio.Value = "Select Portfolio"

【讨论】:

  • 感谢 Shai,这就是我所追求的,尽管很抱歉错过了原始消息中的关键点。投资组合组合框有两列与之关联,当我尝试这个时,框是空白的?
  • @Carlos80 那么您想在CB_Portfolio 中显示哪些值(第二个值)?
  • 理想的选择投资组合声明。这是一个两列框,因为我希望用户按名称选择,但传递回 SQL 的变量是与按名称选择关联的 ID 号。
猜你喜欢
  • 2020-10-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-03
  • 1970-01-01
  • 2013-10-07
  • 1970-01-01
  • 2021-01-26
相关资源
最近更新 更多