2017-08-03 332 views
1

我需要將數字粘貼爲文本。這是有問題的,因爲前面有很多零(但我需要它們)。第一個片段,不起作用(我在互聯網上找到它)。VBA excel粘貼爲文本

Worksheets("B").Range("k7:k7").PasteSpecial Format:=」Text」, 
Link:=False, DisplayAsIcon:=False 

其他我記錄,但它並不總是工作。

PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone, 
SkipBlanks:=False, Transpose:=False 

有人可能會建議我一個更好的解決方案嗎?

+0

您是否曾嘗試在單元格中添加文本的「infront」?這應該使excel將您的數字視爲文本並保持前導零 – Zac

+0

或者您可以嘗試按照本文中的幾個解決方案進行操作:https://support.office.com/zh-cn/article/Keeping-leading-零和大號 - 1bf7b935-36e1-4985-842f-5dfa51f85fe7?ui = zh-CN&rs = zh-CN&ad = US或者試試這個公式:'''= TEXT(A1,「000-00-0000」) '''這會產生這樣的結果:** 012-34-5678 ** –

回答

0

您需要將單元格/列格式化爲「文本」格式,然後粘貼數字以保留前導零。如果它仍然不起作用,請嘗試先將數字粘貼到記事本中,然後將所有數字複製到記事本中,然後將其粘貼回現在格式爲「文本」的單元格/列。 希望它有幫助。

0

如果你試圖複製粘貼單個細胞,而不是複製粘貼得到的單元格值追加單引號和值存儲在目的地

0

我無法重現您的問題。

我創建了具有以下新的表: Example spreadsheet

下面的代碼似乎做你希望的東西:

Sub pasteAsText() 

ActiveSheet.Range("A2").Copy 
ActiveSheet.Range("C2").PasteSpecial 

ActiveSheet.Range("A3").Copy 
ActiveSheet.Range("C3").PasteSpecial 

ActiveSheet.Range("A4").Copy 
ActiveSheet.Range("C4").PasteSpecial 


End Sub 

這是否解決問題了嗎?