2015-01-15 120 views
0

我有一个包含油井石油生产信息的工作簿。每口井都有自己的工作表。我想将每口井的累积石油和天然气产量复制并粘贴到工作簿末尾的预制工作表中,以便我可以获得累积石油生产清单。从每个工作表中复制并粘贴一个范围

正常的复制和粘贴vba不适用于我,因为我试图粘贴的是计算值。每当我执行我的当前代码时,我都会收到#REF错误。

我知道这不是一个独特的问题,它已被问在此之前。我已经看过以前对这个问题的回答,但试图破坏代码但失败了。我知道我需要使用粘贴特殊功能,但我似乎无法弄清楚如何让这个工作。

我正在复制范围AB3:AE3。我试图复制并粘贴到的表名是SmtProd。我希望将值复制到第2行开始的SmtProd表单中(第1行具有标题)。

下面是我目前的复制和粘贴代码

Range("AB3:AE3").Copy 
    Selection.Copy Sheets("SmtProd").Range("A" & Rows.Count).End(3)(2) 

任何帮助,将不胜感激

感谢,

约西亚

回答

0

试试这个:

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 

请注意双面粘贴。

+0

很棒!非常感谢。我一直坚持这一点。 – 2015-01-15 17:29:10

+0

@JosiahHulsey感谢您的反馈! – 2015-01-15 17:31:44

相关问题