将Excel工作表复制到另一个Excel工作簿,但只是格式和值

时间:2013-02-14 17:53:19

标签: vba excel-vba excel

我有两个excel工作簿 Book_A Book_B ,我知道如何从 A - >复制整个工作表B

        wksSh1.Copy Before:=wkbBook_B.Sheets(1)

但我只想复制包含值和格式而不是公式的工作表。这是可能的

3 个答案:

答案 0 :(得分:5)

wksSh1.Copy Before:=wkbBook_B.Sheets(1)
with wkbBook_B.Sheets(1).UsedRange
    .value = .value 'converts formulas to values
end with

答案 1 :(得分:4)

使用PasteSpecial

wksSh1.Copy
With wkbBook_B.Sheets(1)
    .PasteSpecial xlPasteFormats
    .PasteSpecial xlPasteValues
End With

正如Scott评论的那样,对于早期版本的Excel(2003 +),您可以使用xlPasteValuesAndNumberFormats

答案 2 :(得分:0)

如果你知道行数和列数(或者你可以使用一行和一个总值来计算它们的列),这样更安全:

For i = 2 To numberOfRows
   For j = 1 To numberOfColumns
      Cells(i, j).Value = Cells(i, j).Value
   Next
Next