我正在制作一个宏,在数字的开头添加分隔符和撇号:
Sub Apostrofe()
Selection.NumberFormat = "#,##0"
For Each cell In Selection
cell.Value = "'" & cell.Value
Next cell
End Sub
123456789的输出为123.456.789,但当它在开头添加撇号时,格式丢失。在公式栏上,我看到'123456789,但分隔符不会出现,除非我从数字中删除撇号。
我试图在手动添加' and时将数字连接在一起。但结果是一样的。在代码的格式中添加撇号将其添加到单元格中,但它不会出现在公式栏中。
如果我用分隔符手动编写撇号+数字,它可以工作,但我收到数百个必须以这种方式格式化的数字。
我如何修改宏做我需要什么?
如果使用撇号,该值将被转换为文本。
似乎在您的示例中,您不更改值本身(到包含格式化数字的文本等效),您只需将格式应用于单元格,然后用'.
覆盖它。我认为你应该试试下面的代码:
cell.NumberFormat = "@" ' set cell format to text
cell.Value = Format(cell.Value, "#,##0") ' Format() returns formated number as a string