excel vba中,如果A列相同,则对应B列数据求和 50

excelvba中,如果A列相同,则对应B列数据求和A1A2A3B2B3B4C3C4最后输出:A6B9C7这样... excel vba中,如果A列相同,则对应B列数据求和A 1
A 2
A 3
B 2
B 3
B 4
C 3
C 4
最后输出:
A 6
B 9
C 7
这样
展开
 我来答
txjjwq
2017-12-10 · TA获得超过3693个赞
知道小有建树答主
回答量:864
采纳率:54%
帮助的人:272万
展开全部
  1. 思路是筛选出不重复数据,再对不重复数据分类求和,单条件求和用SUMIF就可。

  2. 录制筛选的宏、去重复的宏,再对宏编辑为自己的宏,删除录制的宏。

  3. Sub test()

  4. Dim ls As Integer

  5. Dim ll As Integer   

  6. Dim ss As Integer

  7. ls = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row '统计A列行数

  8. Columns("A:A").Select

  9. Application.CutCopyMode = False

  10. ActiveSheet.Range("A:A").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("XFD1"), Unique:=True '筛选A列不重复数据,放到最后一列

  11. ActiveSheet.Range("XFD:XFD").RemoveDuplicates Columns:=1, Header:=xlNo '去掉筛选出的重复数据,因筛选会自建表头(EXCEL2016版)

  12. ll = Application.WorksheetFunction.CountA(ActiveSheet.Range("XFD:XFD"))

  13. Do                                                                      '对筛选数据分类求和并输出

  14. ss = ss + 1

  15. ActiveSheet.Range("C" & ss) = ActiveSheet.Range("XFD" & ss) & "=" & Application.WorksheetFunction.SumIf(ActiveSheet.Range("A:A"), ActiveSheet.Range("XFD" & ss), ActiveSheet.Range("B:B"))

  16. Loop Until ss = ll

  17. End Sub

    百度自动生成序号,VBA中是没有的。

香格里拉稻草人
2017-12-10 · TA获得超过385个赞
知道小有建树答主
回答量:494
采纳率:66%
帮助的人:376万
展开全部

提供一个通用的字典求和代码供参考,对学习字典求和会有帮助的,右击图片,选择在新标签页中打开(T),GIF动画是完好的,不知道为什么这里动画是这个样子。

Sub a()
    Dim rng As Range
    Dim d As Object
    Set d = CreateObject("scripting.dictionary")
    For Each rng In Range("a1:a7")
        If Not d.exists(rng.Value) Then
           d.Add rng.Value, Range(rng.Address).Offset(, 1).Value
        Else
           d(rng.Value) = d(rng.Value) + Range(rng.Address).Offset(, 1).Value
        End If
    Next
    Range("f1").Resize(d.Count, 2) = Application.Transpose(Array(d.Keys, d.items))
    Set d = Nothing
    Set rng = Nothing
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
硅谷少年
2017-12-10 · TA获得超过7555个赞
知道大有可为答主
回答量:7116
采纳率:82%
帮助的人:1404万
展开全部

推荐sumif函数。

公式如下图:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yanxy0924
2017-12-10 · 知道合伙人互联网行家
yanxy0924
知道合伙人互联网行家
采纳数:7683 获赞数:18575

向TA提问 私信TA
展开全部
用函数求和也很简单容易做到
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yangkan1985
2017-12-10 · TA获得超过161个赞
知道小有建树答主
回答量:199
采纳率:57%
帮助的人:57万
展开全部
字典求和,或者函数的条件求和
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 4条折叠回答
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式