在Excel中使用VBA求出每一类别的总和,可以通过以下步骤实现:
Sub CalculateCategoryTotal()
Dim ws As Worksheet
Dim lastRow As Long
Dim categoryColumn As Range
Dim totalColumn As Range
Dim category As String
Dim total As Double
' 设置工作表
Set ws = ThisWorkbook.Worksheets("Sheet1") ' 将"Sheet1"替换为你的工作表名称
' 设置类别列和总和列的范围
Set categoryColumn = ws.Range("A2:A" & ws.Cells(Rows.Count, 1).End(xlUp).Row) ' 将"A"替换为你的类别列所在的列号
Set totalColumn = ws.Range("B2:B" & ws.Cells(Rows.Count, 2).End(xlUp).Row) ' 将"B"替换为你的总和列所在的列号
' 循环计算每个类别的总和
For Each cell In categoryColumn
category = cell.Value
total = 0
' 在总和列中查找相同类别的数值并累加
For i = 1 To totalColumn.Rows.Count
If categoryColumn.Cells(i, 1).Value = category Then
total = total + totalColumn.Cells(i, 1).Value
End If
Next i
' 将总和写入对应类别的单元格
ws.Range("C" & cell.Row).Value = total ' 将"C"替换为你想要写入总和的列号
Next cell
End Sub
这段VBA代码通过循环遍历类别列中的每个类别,在总和列中查找相同类别的数值并累加,最后将总和写入对应类别的单元格。你可以根据实际情况修改代码中的工作表名称和列号。
推荐的腾讯云相关产品:腾讯云云服务器(https://cloud.tencent.com/product/cvm)和腾讯云数据库(https://cloud.tencent.com/product/cdb),它们提供了稳定可靠的云计算基础设施和数据库服务,适用于各种规模的应用场景。
领取专属 10元无门槛券
手把手带您无忧上云