ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 533|回复: 3

[求助] 如何统计汇总

[复制链接]

TA的精华主题

TA的得分主题

发表于 2015-12-14 15:04 | 显示全部楼层 |阅读模式
如何统计汇总

如何统计汇总.rar

1.95 KB, 下载次数: 12

TA的精华主题

TA的得分主题

发表于 2015-12-14 15:20 | 显示全部楼层
两位数字   芯    -      汉字     -   (汉字)
这样格式的?你的例子有点少
很有可能就是别人给你写了,你还得再要求别人改

TA的精华主题

TA的得分主题

发表于 2015-12-14 15:21 | 显示全部楼层
用函数公式不至于用的这么死板吧?
把查询条件分列以后,再用*和"-"串联起来查询就可以了.
这个不需要用代码去做的

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-12-14 15:31 | 显示全部楼层
不知道是不是你想要的,我写了两种方式。
Sub tq()
Dim arr, a, brr(1 To 65536), i, b, c
i = 1
For a = 2 To Sheet1.[a65536].End(3).Row
arr = Split(Cells(a, 1), "-")
brr(i) = arr(0)
Erase arr
arr = Split(Cells(a, 1), "(")
brr(i) = brr(i) & "-(" & arr(1)
i = i + 1
Next
For c = 2 To Sheet1.[F65536].End(3).Row
For b = 1 To i - 1
If Cells(c, 6) = brr(b) Then
Cells(c, 7) = Cells(c, 7) + 1
End If
Next
Next
Erase arr, brr
End Sub

Sub tq2()
Dim a, b, c, e
Dim d
Set d = CreateObject("scripting.dictionary")
For a = 2 To Sheet1.[a65536].End(3).Row
b = Split(Cells(a, 1), "-")(0) & "-(" & Split(Cells(a, 1), "(")(1)
d(b) = d(b) + 1
Next
[b2].Resize(d.Count, 1) = Application.Transpose(d.keys)
[c2].Resize(d.Count, 1) = Application.Transpose(d.items)
Set d = Nothing
End Sub

如何统计汇总.rar

10.49 KB, 下载次数: 6

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-19 06:53 , Processed in 0.042406 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表