复制excel范围并仅粘贴VBScript中跳过空白的值(pasteSpecial)

时间:2014-12-11 15:07:24

标签: excel vbscript

我需要从一张源excel文件中复制一些excel范围,并通过跳过从源excel文件复制的空白单元格将其粘贴到目标excel文件的工作表中。

以下代码在VBA中工作正常,如何在VBScript中编写等效代码?

Selection.Copy
Sheets("Sheet1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=True, Transpose:=False

我知道只有值的粘贴代码是“-4163”。在这种情况下,下面的代码段工作正常,

sourceWorkbook.Worksheets(1).UsedRange.Copy
targetWorkbook.Worksheets(1).Range("A1").PasteSpecial -4163

但是我需要它来粘贴值并跳过空白复制的单元格(即不想用复制范围的单元格覆盖或替换)。如何实现这个??

非常感谢任何帮助

1 个答案:

答案 0 :(得分:1)

嗨Ranjan最后一些我们如何得到它解决了在vb脚本中使用特殊粘贴的正确方法是

Selection.PasteSpecial -4163,-4142,True,False

-4163 - 对于XlPastValues -4142 - 用于操作:= xlNone 真 - 对于跳过空白 假 - 转置