2017-04-17 47 views
2

我需要幫助來檢查這個宏,它打算複製和粘貼而不進行格式化。它不能正常工作。Maro永遠在Excel中複製並粘貼爲公式默認情況下

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) 
    On Error Resume Next 
    Target.PasteSpecial xlPasteFormulas 
    Application.CutCopyMode = True 
End Sub 

如何讓Ctrl-V粘貼而不使用任何格式?我想保持excel乾淨整潔,以便用戶可以複製和粘貼值和公式而無需格式化。

謝謝!

+3

這很混亂,你想使用Ctrl + V或Workbook_SheetSelectionChange? –

+0

因此...日期應該是整數,百分比應該是小數(即*浮動*或*雙倍*),並且貨幣應該只顯示相關小數位而沒有貨幣符號? – Jeeped

+0

相關:[我應該在退出我的子過程之前打開.CutCopyMode?](http://stackoverflow.com/questions/33833318/should-i-turn-cutcopymode-back-on-before-exiting-my-sub -程序)。 – Jeeped

回答

0

試試這個:Assigning Macros to Short-Cut Keys in Excel

你需要制定出用戶如何訪問宏 - 有幾個方法可以做到這一點,我不太知道什麼會在你的環境中工作,也您的訪問級別以使這些選項有效。

我想我會構建一個非常簡單的插件,其中嵌入了宏,並且還指定了宏快捷方式來覆蓋CTRL + V.然後根據您的公司策略部署ADD-IN。

但是,我們需要更多的細節來充分實施解決方案。

+4

你不覺得它更像是評論而不是答案嗎? – Masoud

+0

我已經添加了一些更多的細節...但基於這個問題,不確定還有什麼要補充的,因爲至少對我而言,鏈接總體上是作爲答案的基礎。你想讓我刪除答案嗎? – flaZer

2

如果你想使你自己,定製按Ctrl-V,好了,就可以實現這樣說:

' Code Module ThisWorkbook 
Private Sub Workbook_Open() 
    Application.OnKey "^v", "ThisWorkbook.PasteWithoutFormat" 
End Sub 
Private Sub PasteWithoutFormat() 
    If Application.CutCopyMode Then Application.Selection.PasteSpecial xlPasteFormulas 
End Sub 
0

我去最簡單的方法。我設置了Ctr-v(在宏的選項中)運行以下代碼:

Sub Pstfrmul() 
    Selection.PasteSpecial xlPasteFormulas 
End Sub 

很多很多非常感謝您的答覆和意見。最好的, Gerónimo

+1

這是我分享的選項。 – flaZer