宏 - 复制并粘贴

宏 - 复制并粘贴

问题描述:

我的公司只使用MS Office 2003产品,因此我必须坚持使用它。由于我的工作性质,我需要使用大量的“复制和粘贴”功能。源数据主要来自网站,我将数据粘贴到Excel中的单元格中。问题是剪贴板保持源格式,它反映在单元格上,当我粘贴它。每次用户复制和粘贴时,通过选择“粘贴为文本”选项来删除源格式是非常麻烦的。所以我决定使用宏。当我尝试从网站复制和粘贴到Excel时,宏完美工作完美,但是当我从Excel复制并粘贴到相同的工作表它会引发错误。宏 - 复制并粘贴

这是我用来复制和粘贴从网站到excel没有源格式的代码。

Sub Paste_without_any_formatting() 
    ActiveSheet.PasteSpecial Format:="Text" 
End Sub 

我想添加另一个代码从Excel复制和粘贴到这样的工作表。

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ 
    :=False, Transpose:=False 

我怎样才能把这两个代码放在一起?当我按下Ctrl + V时,我想让这些发生奇迹般的发生。谁能帮我?

这是实现它的最简单的方法。

Sub Sample() 
    On Error GoTo Whoa1 

    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ 
    :=False, Transpose:=False 

    Exit Sub 
Pastetext: 
    On Error GoTo Whoa2 

    ActiveSheet.PasteSpecial Format:="Text" 

    Exit Sub 
Whoa1: 
    Resume Pastetext 
Whoa2: '<~~ If both Paste method fails then show message. Ex: Image in Clipboard 
    MsgBox err.Description 
End Sub 

还有一种方法可以确定剪贴板数据类型,然后相应地粘贴。

+0

我明白了。谢谢! – 2013-02-23 13:19:24