2014-10-07 53 views
0

對於易混淆的標題,我表示歉意。我遇到了一個怪癖,我不知道如何描述,解決或修復。我有一個項目,我從另一個工作簿中拉取值,並希望從我傳回原始函數的集合中插入它。我打印出來的調試屏幕,這是正確的值如下:VBA在插入時更改單元格值

9-06-01 

非常下一行我將其插入到這樣的合適的細胞:

Dim item As Variant 

For Each item In someCollection 
    Debug.Print item 
    thisSht.cells(y, x).Value = item 
Next item 

當我將其插入到單元格的值變爲

37140 

的值並不被視爲一個日期,我認爲這是EXCEL試圖自動格式,但似乎並沒有這樣的情況,因爲一旦我設定正確單元格格式化的問題仍然存在。它適用於其他一些值,如807-01-01。任何幫助,將不勝感激。

+0

是不是好,如果該項目是一個字符串? – 2014-10-07 14:00:30

回答

2

它被視爲日期(2001年9月6日)。要解決,你可以使用前綴「或格式的單元格爲文本:

thisSht.cells(y, x).Value = "'" & item 

With thisSht.cells(y, x) 
.Numberformat = "@" 
.Value = item 
End With 
相關問題