全局粘贴值为Excel

以下代码仅适用于“仅粘贴值”事件。 当数值在同一张表之间移动时,它就起作用了。 但是,如果我从一个不同的工作簿中复制一个值并运行该macros,Excel会抱怨数据超出范围。 一个人如何去做一个全局的粘贴值macros来运行整个Excel程序?

Sub PasteValOnly() ' ' PasteValOnly Macro ' pastes values only ' Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End Sub 

把这个macros放到你的PERSONAL.XLSB中,这样它总能工作。

这是我使用的:

 'GENERIC MACROS Sub GxPasteValuesOnly() 'Assigned to Ctrl+Shift+v Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, skipBlanks:=False, Transpose:=False End Sub 

尝试这个

 ActiveSheet.PasteSpecial Format:="Text", Link:=False, DisplayAsIcon:= False