我想添加其他工作表中的数据,而不必一次又一次地复制标题

时间:2019-02-06 08:05:23

标签: vba

我想添加其他工作表中的数据,而不必一次又一次地复制标题。

此代码从不同的工作表复制数据并在一张工作表中进行整理。但是,每当我在以前的数据下合并数据时,它都包含标头。我想添加其他工作表中的数据而不复制标题。

sub collate_data()
    thisworkbook.sheets.add after:=sheets("Orders")
    Activesheet.name = "finalsheet"
    c = sheets("Control2nd").range("A100").End(Xlup).row

    for i = 1 to c
        a = sheets("Finalsheet").range("A10000").End(xlup).Row
        b = sheets("Control2nd").range("A" & i).value
        Thisworkbook.sheets(b).Range("A1:W90").Copy
        Thisworkbook.sheets("FinalSheet").Range("A" & a).select
        activesheet.Paste
    Next
End Sub

应仅将标头粘贴一次,而应将其他工作表数据粘贴无标头的预期结果。

1 个答案:

答案 0 :(得分:0)

很难确切地知道您想要什么,但是我尝试了一下。这可能有效:

Sub collate_data()
    Dim c As Integer
    Dim i As Integer
    Dim a As Integer
    Dim b As Variant

    ThisWorkbook.Sheets.Add after:=Sheets("Orders")
    ActiveSheet.Name = "finalsheet"
    c = Sheets("Control2nd").Range("A100").End(xlUp).Row

    For i = 1 To c
        a = Sheets("Finalsheet").Range("A10000").End(xlUp).Row
        b = Sheets("Control2nd").Range("A" & i).Value
        If i = 1 Then
            ThisWorkbook.Sheets(b).Range("A1:W90").Copy
        Else
            ThisWorkbook.Sheets(b).Range("A2:W90").Copy
        End If
        ThisWorkbook.Sheets("FinalSheet").Range("A" & a).Select
        ActiveSheet.Paste
    Next
End Sub