Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/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代码_Vba_Excel_Macros - Fatal编程技术网

列总计的Excel VBA代码

列总计的Excel VBA代码,vba,excel,macros,Vba,Excel,Macros,快速提问 对列数据求和的VBA代码是什么。理想情况下,总和/总数应位于每列的最后一行;我的心电图在下面 **Purchase Value** 6,578,548.01 15,883,286.84 - - - 45,929,606.02 26,446,713.72 有什么想法吗?您可以在列中找到第一个单元格和最后一个单元格的地址,然后将它们相加。有很多方法可以做到这一点,这里有一种: Sub columnSum() varSumCo

快速提问

对列数据求和的VBA代码是什么。理想情况下,总和/总数应位于每列的最后一行;我的心电图在下面

**Purchase Value**
 6,578,548.01 
 15,883,286.84 

      -
      -
      -
 45,929,606.02 
 26,446,713.72 

有什么想法吗?

您可以在列中找到第一个单元格和最后一个单元格的地址,然后将它们相加。有很多方法可以做到这一点,这里有一种:

Sub columnSum()

    varSumColumn = Cells.Find(What:="**Purchase Value**", LookAt:=xlWhole).Column
    varColumnFirstRow = Cells.Find(What:="**Purchase Value**", LookAt:=xlWhole).Row + 1
    varColumnLastRow = Cells.Find(What:="**Purchase Value**", LookAt:=xlWhole).End(xlDown).Row
    varColumnSum = Application.WorksheetFunction.Sum(Range(Cells(varColumnFirstRow, varSumColumn), Cells(varColumnLastRow, varSumColumn)))
    Cells(varColumnLastRow + 1, varSumColumn) = varColumnSum 

End Sub
本例查找包含购买值的列,然后确定总和的范围并将其相加。
正如我所说,这是几种可能的方法之一。

让我们在A列中假设您的购买价值

Sub simple()
    LastRow = Range("A" & Rows.Count).End(xlUp).Row
    Total = Application.WorksheetFunction.Sum(Range("A2:A" & LastRow))
    Range("A" & LastRow + 1).Value = Total
End Sub

对本专栏的其余部分执行此操作。如果列很长,请告诉我。

以下代码将给出表中所有列的总和。总和将显示在每列最后一行的下方

Sub SumAllColumns()
    lastCol = Cells(1, Columns.Count).End(xlToLeft).Column

    For col = 1 To lastCol
        lastRow = Cells(Rows.Count, col).End(xlUp).Row
        colSum = WorksheetFunction.Sum(Range(Cells(2, col), Cells(lastRow, col)))
        Cells(lastrow + 1, col) = colSum
    Next col
End Sub