簡體   English   中英

excel vba 更改日期格式 - 數字

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM