[英]Copy and paste a range from each worksheet
我有一本工作簿,其中包含油井的石油生产信息。 每个井都有自己的工作表。我想将每个井的累计油气生产量复制并粘贴到工作簿末尾的预先格式化的工作表中,这样我就可以获得累计油气产量的列表。
普通的复制和粘贴vba对我不起作用,因为我要粘贴的是计算得出的值。 每当我执行当前代码时,都会收到#REF错误。
我知道这不是一个独特的问题,之前已经有人问过。 我已经看过以前对该问题的回答,并试图蚕食代码,但失败了。 我知道我需要使用粘贴特殊功能,但是我似乎也无法弄清楚该如何工作。
我正在复制范围AB3:AE3。 我要复制并粘贴到的工作表名称是SmtProd。 我希望将这些值从第2行(行1具有标题)复制到SmtProd工作表中。
以下是我当前的复制和粘贴代码
Range("AB3:AE3").Copy
Selection.Copy Sheets("SmtProd").Range("A" & Rows.Count).End(3)(2)
任何帮助,将不胜感激
谢谢,
约西亚
试试看:
Sub MakeSummary()
Dim sh As Worksheet, N As Long
Dim i As Long, M As Long
N = Sheets.Count - 1
M = 2
For i = 1 To N
Sheets(i).Range("AB3:AE3").Copy
Sheets("SmtProd").Range("A" & M).PasteSpecial (xlValues)
Sheets("SmtProd").Range("A" & M).PasteSpecial (xlFormats)
M = M + 1
Next i
End Sub
请注意双重粘贴。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.