如何在数据库中显示Excel中的°C符号?
我正在使用一个Excel文件,其中一个单元格包含°C符号与其他string(Ex .. -40°C)
而我正在尝试使用该单元格的值
Dim strIn As String strIn = Range("B2").Text
所有工作正常和strIn有一个值“-40°C”,但一旦我改变我的地区设置如下..
它开始显示strIn值为“-40?c”
0°符号随着?
预先感谢任何帮助..利约何塞。
这是VBA IDE中的限制。 它只能显示总共255个不同的字符(其中一些是不可打印的)。 这将是标准Ansii的前128个字符,其余的将由您的区域设置中的代码决定。
VBA显示? 因为它不能显示°(因为°不在您的设置的字符代码列表中)。 当你浏览其他的代码时,它应该像你所期望的那样执行,并且正确地读取你的表单。
如果你想在VBA中使用°,你将需要使用它的字符代码。 从我的testing中,至less可以在我的电脑上通过Chrw(176)
生成它(是的,我确实已经将我的区域设置更改为泰文)。 要检查代码,你可以通过循环运行它们。 现在,正如我之前所说,IDE将显示?,但Excel将显示°。
你可以通过在你的代码上运行这个testing来确认:
debug.print Instr(strIn, "?") 'Should be 0 debug.print Instr(strIn, chrw(176)) 'Should be 4
一个快速的解决办法是取代“?” 符号在string中。 像一个声明
strIn = Replace(strIn, "?", "°")
应该解决你的问题
假设你的符号永远不会影响值, val
应该给你你的数据。
示例数据:
文本val() 40°C 40 40?C 40 40%C 40 40C 40