我有一个工作表,允许用户更改温度单位,有一个包含“°C”和“°F”的下拉框,然后使用VBA进行其余操作。

问题是,我有以下代码:

Dim UnitString As String
Set UnitRange = Worksheets("Units of Measure").Cells
UnitString = UnitRange(1, 1)
MsgBox UnitString


它给我“?C”或“?F”

下一个问题,当我打电话时:

UnitRange(1, 1) = "° C"


我在那个单元格里得到“ฐC”。 (ฐ是泰语的字符之一)

这些问题打破了我的工作表的逻辑,有人可以帮助我吗?

问候,
沙伦

最佳答案

您可能想在VBA例程中使用Unicode。例如,这是一个简单的例程,可将单元格格式化为摄氏度:

Sub centigrade()
    Const g = "General"
    dq = Chr(34)
    cent = " " & ChrW(8451)
    s = g & dq & cent & dq
    Selection.NumberFormat = s
    Selection.Font.Name = "Arial Unicode MS"
End Sub

关于excel - Excel不正确显示度数符号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21783124/

10-11 03:58