[英]excel vba change format of date - numbers
Excel 自动将以下值更改为数字,我猜是因为他将它们视为日期:
2/2/1 变成 36527 4/2/1 变成 36926
我现在有一个包含不同格式组合的列:
2/1/
3/1/
8/7/
36527
1/0/0
36926
我可以使用哪个 VBA 代码将数字转换回原始格式? 其他值应保持不变。
我知道 cDate 函数,但我想它在这里没有用?
我已经在我的 VBA 代码中使用了这个来粘贴值
ActiveWorkbook.Sheets("Import").Columns("A:AH").NumberFormat = "@"
ActiveWorkbook.Sheets("Import").Range("A1").Select
ActiveSheet.Paste
你不能把它们改回来。 一旦 Excel 转换它们,原始值就消失了。 在输入值之前,您可以在前面加上撇号以将其强制为文本。
ActiveCell.Value = "'" & sMyValue
或者正如@Scott Craner 评论的那样,您可以将单元格格式化为文本
ActiveCell.NumberFormat = "@"
ActiveCell.Value = sMyValue
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.