读/写时记帐单元格类型更改-Excel VBA

问题描述

我正在将一些记帐类型的单元格读入Variant变量,然后将该变量写入新的工作簿中。当我这样做时,数字格式会混合在一起。

我首先从第一本工作簿中读取了单元格,其值为 69,77€,其单元格格式为 Accounting

Dim tiendas As Variant
x=.Cells(1,1)

然后,我创建一个新的工作簿并将变量的内容写入单元格:

wb.Worksheets(1).Cells(1,1) = x

如果我什么都不做,则复制的值看起来像这样 697.715 ,其单元格格式为 Number

然后我尝试在写入值之前更改单元格格式,即:

wb.Worksheets(1).Range("A1:A1").Style = "Currency"    
wb.Worksheets(1).Cells(1,1) = x

结果我得到 697.715,00欧元,单元格类型为 Custom

我尝试过反转顺序,即先写入值,然后将样式更改为“货币”。结果完全一样。

我还尝试过以其他方式更改格式,特别是使用Excel中自定义格式中显示的内容(并将字符串中的引号加倍):

wb.Worksheets(1).Range("A1:A1").NumberForma="_-* #.##0,00 €_-;-* #.##0,00 €_-;_-* "" - ""?? €_-;_-@_-"   
wb.Worksheets(1).Cells(1,1) = x

在这种情况下,结果为 697715,000€,单元格格式为 Custom

似乎原始数字格式无法正确读取,但我不知道如何解决。

非常欢迎任何想法。

谢谢!

注意:在Windows中,我的数字设置是“,”(十进制符号)和“。”。作为千位分隔符。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...