我有一个宏打开一些工作簿并在其中放入一些数据,在将一段数据放入单元格后,它将其样式编辑为.Style = "Comma"
(在数字之间创建空格分隔符)。
但是,当我打开该文件时,我只看到一些具有“逗号”样式的单元格,而其他单元格根本没有分隔符。如果我选择一个没有可见分隔符的单元格,但鼠标光标位于公式区域并单击回车,则样式将更改为“逗号”。
我试图用.Cells(i, j).Calculate
来模仿,但无济于事。
为什么某些单元格的样式不会改变,以及如何在宏内部进行更改?
PS我已经在设置中进行了自动计算。手动将样式更改为“逗号”(单击000
图标也不起作用 - 仅在将光标放入单元格的公式并单击回车后才起作用。)
编辑:我将文件保存为xlsx
。代码并不重要。它由Application.Open(filePath)
和resultWorkbook.Worksheets("sheet 1").Cells(i, j).Value = someValue
组成。
答案 0 :(得分:2)
你的一些号码'被存储为文本。数字格式和样式,例如'逗号'不适用于文字。
以下内容会将所有数字(和公式!)转换为可以格式化/样式化的数字量。您可能希望进一步限制范围,以免影响包含公式的区域:
With Worksheets("sheet 1")
.UsedRange.Value = .UsedRange.Value
End With