我有一段代码需要使用不同的格式。目前,主要关注的领域是电子邮件中主题行的措辞/格式。这是我到目前为止所拥有的。
ActiveWorkbook.EnvelopeVisible = True
With .Parent.MailEnvelope
.Introduction = ""
With .Item
.to = "Somebodysemail@whatever.com;"
.to = "Somebodysemail@whatever.com;"
.CC = ";"
.BCC = ""
.Subject = Date & " Completion " & summary.[B8] & "% """
.send
.display
End With
到目前为止,运行宏时我的主要主题行是:
2018年7月26日完成0.992%
我希望它读为:
2018年7月26日完成99.2%
当调用单元格B8的内容时,它在我的excel工作簿中已经采用99.2的格式。我不明白为什么它没有复制单元格的确切内容。任何帮助将不胜感激! :)
答案 0 :(得分:1)
这实际上不是编程问题,因此可能更适合于SuperUser之类的相关网站,但我还是会这么快回答……
在代码中替换此行:
.Subject = Date & " Completion " & summary.[B8] & "% """
...具有:
.Subject = Date & " Completion " & Format(summary.[B8],"0.0%")
要回答您的问题,您的说法是正确的:
“单元格B8,它已经是99.2的格式”
“格式”是关键字。 Excel中的数字以正好数字的形式存储,并且没有格式。更改单元格的格式时,只会更改数字的显示方式,而不是实际数字本身。这是一件好事,有几个原因。
我强烈建议您花点时间做一下this one之类的教程。现在花一点时间可以节省很多时间。
祝你好运!