Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
excel表头公式的VBA实现_Excel_Vba - Fatal编程技术网

excel表头公式的VBA实现

excel表头公式的VBA实现,excel,vba,Excel,Vba,我使用下面的子过程填充一些以单元格AS9开头的单元格 但不知何故,子过程也修改了AS8中的头文件。我不想在运行子流程时修改标题 Sub actualizareformule() Dim Lastrow As Long Application.ScreenUpdating = False Lastrow = Range("L" & Rows.Count).End(xlUp).Row Range("AS9:AS" & Lastrow).Formu

我使用下面的子过程填充一些以单元格AS9开头的单元格 但不知何故,子过程也修改了AS8中的头文件。我不想在运行子流程时修改标题

Sub actualizareformule()

    Dim Lastrow As Long

    Application.ScreenUpdating = False

    Lastrow = Range("L" & Rows.Count).End(xlUp).Row
    Range("AS9:AS" & Lastrow).Formula = _
        "=IFERROR(RC[-2]/RC[-1],""0%"")"   

    ActiveSheet.AutoFilterMode = False
    Application.ScreenUpdating = True

End Sub

您应该在最后一行添加一个。这样,您将从下一行(下面一行)开始添加公式。试试这个:

Sub actualizareformule()

Dim Lastrow As Long

Application.ScreenUpdating = False

'Find last row and add one
Lastrow = Range("L" & Rows.Count).End(xlUp).Row + 1

Range("AS9:AS" & Lastrow -1).Formula = "=IFERROR(RC[-2]/RC[-1],""0%"")"

ActiveSheet.AutoFilterMode = False
Application.ScreenUpdating = True

End Sub

在整个过程中使用显式父工作表引用,并可能添加一个检查,以确保Lastrow>=9。它正在处理标题,但现在公式已完成,并有一个额外的行已编辑-立即检查(我已更正Lastrow值)