用于复制标题和上述小计组的VBA代码

时间:2015-07-05 09:17:16

标签: excel vba excel-vba

我一直在尝试创建一个用于复制标题的宏,并插入所有小计组的上方。所以所有小计组都有一个标题。我尝试了下面的宏,但它无法正常工作。

height: 100px;

1 个答案:

答案 0 :(得分:2)

尝试以下方法。有几个调整:

1)我修复了缩进。也许是一种品味问题,但如果没有逻辑缩进,我会发现难以阅读的代码。

2)我用行(1)替换了前两行.Copy。没有理由选择某些东西来复制它(1作为索引比#34; 1:1&#34更加惯用;)

3)插入行的行为完成了复制粘贴操作。因此,我在插入操作后重新复制了标题行。这可以解决您的实际问题

4)循环中的最终副本使Excel仍然在寻找粘贴标题行的地方。 Application.CutCopyMode = False地址。

Sub header()

    Rows(1).Copy
    Dim s As Range

    Dim Col As Variant
    Dim BlankRows As Long
    Dim LastRow As Long
    Dim R As Long
    Dim StartRow As Long

    Col = "P"
    StartRow = 1
    BlankRows = 1

    LastRow = Cells(Rows.Count, Col).End(xlUp).Row

    Application.ScreenUpdating = False

    With ActiveSheet
        For R = LastRow To StartRow + 1 Step -1
            If .Cells(R, Col) = "Total" Then
                .Cells(R + 1, Col).EntireRow.Insert Shift:=xlDown
                Rows(1).Copy
            End If
        Next R
    End With
    Application.ScreenUpdating = True
    Application.CutCopyMode = False

 End Sub