excel - 使用千位分隔符在 ComboBox 中显示值
问题描述
我有以下 Excel 电子表格:
A B
1 ComboBox1
2 1.000
3 10.000
4 100.000
5
使用以下 VBA 将此列表加载到 ComboBox 中:
Sub UserForm_Activate()
ComboBox1.List = Sheet1.Range("A2:A4").Value
End Sub
到目前为止,这一切都很好。
我现在遇到的问题是 A2:A4 范围内的值使用千位分隔符,但是当我将其加载到组合框中时,千位分隔符被删除。如何使用千位分隔符在我的 ComboBox 中显示值?
解决方案
要显示 thausand 分隔符,您可以将值格式化为字符串并将分隔符放在那里。这是通过格式函数 - 完成的Format(10000, "#,##0.00")
。然后值应该保存为字符串数组,这个数组就是那个数组,它作为源传递给UserForm.Combobox1.List
:
Sub UserForm_Activate()
Dim myArr As Variant
Dim myRng As Range
Set myRng = Range("A1:A4")
ReDim myArr(myRng.Cells.Count)
Dim i As Long
For i = LBound(myArr) To UBound(myArr)
myArr(i) = Format(myRng.Cells(i + 1), "#,##0.00")
Next i
ComboBox1.List = myArr
End Sub
这是它的样子:
推荐阅读
- angular - 角度材料切换未定义未命中
- xcode - XCODE 11、SWIFT 5。画线、框等
- vuepress - VuePress:确定是在预渲染上下文中运行还是在浏览器中运行
- java - 在 IOS 中打开 websocket 时出错(CFNetwork SSLHandshake failed (-9807))
- reactjs - 尝试导入错误:“Test1”未从“Test_components”导出
- java - 如何在一个循环中使用 PdfWriter 和 PdfCopy 在现有 PDF 页面中添加内容
- git - 在不丢失代码的情况下更新 Git 子模块
- java - Flyway使用java类对sql文件进行排序
- java - 即使对于不同的请求 grpc,方法也会继续运行并发送相同的信息
- jupyter-notebook - 在 JupyterLab 中打开 .ipynb 时出错 - “关闭而不保存?”