excel - 有没有办法使用 vba 在用户表单中的组合框中的所有值之间切换?
问题描述
我通过多个页面有多个combobox
es 。multipage
这些combobox
es要么是英制的,要么是公制的。有没有办法改变combobox
所有s上所有es的默认值multipage
?
Private Sub UserForm_Initialize()
ComboBox1.List = Array("KPa", "psi")
ComboBox2.List = Array("mm", "inch")
ComboBox3.List = Array("m", "ft")
ComboBox4.List = Array("m3", "bbl")
ComboBox5.List = Array("m^3", "ft^3")
ComboBox6.List = Array("m", "ft")
ComboBox7.List = Array("MPa", "psi")
ComboBox8.List = Array("KPa/m", "psi/ft")
ComboBox9.List = Array("KPa", "psi")
ComboBox10.List = Array("m^3", "ft^3")
ComboBox11.List = Array("m3", "bbl")
ComboBox12.List = Array("mm", "inch")
ComboBox13.List = Array("m", "ft")
ComboBox14.List = Array("KPa", "psi")
ComboBox15.List = Array("m3/min", "bbl/min")
ComboBox16.List = Array("m3", "bbl")
ComboBox17.List = Array("mps", "fps")
ComboBox18.List = Array("mps", "fps")
ComboBox19.List = Array("m^3", "ft^3")
ComboBox20.List = Array("m3/min", "bbl/min")
ComboBox21.List = Array("m", "ft")
ComboBox22.List = Array("m/min", "ft/min")
ComboBox23.List = Array("m^3", "ft^3")
ComboBox24.List = Array("m^3", "ft^3")
ComboBox25.List = Array("m3", "bbl")
ComboBox26.List = Array("m3", "bbl")
ComboBox27.List = Array("m^3", "ft^3")
ComboBox28.List = Array("m^3", "ft^3")
ComboBox29.List = Array("m^3", "ft^3")
End Sub
我value property
在宏编辑器中设置为公制。我希望能够一次在所有esvalue 0
之间切换。value 1
combobox
解决方案
您可以遍历用户窗体上的所有控件并使用以下内容进行设置
Dim cBox As Control
For Each cBox In Me.Controls
If TypeName(cBox) = "ComboBox" Then
cBox.ListIndex = IIf(prop = "Metric", 0, 1)
End If
Next cBox
替换prop
为决定它是公制还是英制的变体。我假设您的所有控件都设置为索引 0 中的公制值和索引 1 中的英制
推荐阅读
- go - 如何在 Golang 上通过 IPC 为 OpenLDAP 客户端实现 SASL/EXTERNAL?
- regex - python正则表达式从字符串中提取某些单词
- angular - 在图表加载时打开 ng2 折线图上最新点的工具提示
- c# - 如何在 asp.net 中制作带有 url 查询字符串的 cookie
- java - 如何在我的 Java 面板上移动图形元素?
- python-3.x - 有什么方法可以删除从 SQLite3 usign python 创建的数据库的所有内容?
- linux - autoconf - 如何生成模板并将其复制到正确的目录
- java - 用java实时获取进程输出
- javascript - 道具是异步函数中的未定义/空对象?
- r - 将 R data.table 对象写入 hdf5 文件