2014-02-13 189 views
1

我正在尋找一個宏,它可以幫助我更快地複製粘貼材料。我經常發現自己複製了一個文本或一個數字(Ctrl + C),當我想要將它粘貼到Excel中的單元格時,我需要右鍵單擊並選擇過去的值。修改粘貼只允許值,而不必右鍵點擊

我會嘗試寫的什麼,我經過故障例如:

Sub PasteValuesOrText() 

Dim DataObj As New MSForms.DataObject 
DataObj.GetFromClipboard 
myString = DataObj.GetValue 
ActiveCell.Value = myString 

End Sub 
+2

查看以下文章@SiddharthRout網站。 http://www.siddharthrout.com/2011/08/15/vba-excelallow-paste-special-only/ – hstay

回答

0

這將至少讓你雙擊複製,是一個開始你的編碼。

Private Sub WorkSheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 
Target.Copy 
Cancel = True 
End Sub 
0

我認爲你正在尋找的東西粘貼特殊沒有很多額外的點擊。以下宏將採用已經複製的內容,並將值粘貼到選定的單元格中。

有一點需要注意的是,通過這樣做,您將失去撤消功能。

Sub Paste_Values() 
    Selection.PasteSpecial _ 
     Paste:=xlPasteValues, _ 
     Operation:=xlNone, _ 
     SkipBlanks:=False, _ 
     Transpose:=False 
    Application.CutCopyMode = False 
End Sub