ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 天地一相

[已解决] 统计个数与求和

[复制链接]

TA的精华主题

TA的得分主题

发表于 2023-1-5 12:49 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
天地一相 发表于 2023-1-5 11:25
谢谢!费心了。依我有限的水平看了下,谈一下,你的sheet(i)这个思路好,我A0,A1等这个东西是固定的,字 ...

补充一下,i就是索引号,也就是工作表的顺序编号,和属性Name无关。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-1-5 12:56 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
tanglf188 发表于 2023-1-5 12:49
补充一下,i就是索引号,也就是工作表的顺序编号,和属性Name无关。

谢谢,我知道,这个sheet1等,打开VBA编程时能看到,不受自定义表名的影响,所以我想着定义这个“i”的起始数字,就等于规定了表几对应A,依次就是B,C,D,E的对应表。

TA的精华主题

TA的得分主题

发表于 2023-1-5 13:04 | 显示全部楼层
天地一相 发表于 2023-1-5 12:56
谢谢,我知道,这个sheet1等,打开VBA编程时能看到,不受自定义表名的影响,所以我想着定义这个“i”的起 ...

工作表三种常用命名:
1、Sheets("表名").Range(.... 常用的是这种
2、Sheet1.Range(....  你说的是这种
3、Sheets(索引号).Range(.... 我用的是这种

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2023-1-5 13:24 | 显示全部楼层
天地一相 发表于 2023-1-5 12:25
谢谢。看了测试了。两个问题:1,用shett(i),可定义i起始于某个数,若5,则,sheet5,6,7,8,9,分别 ...

关于表名的问题,可以根据实际情况来确定。
具体还是要看表格的规范

关于统计数据区域范围不同,这个也是需要楼主指定范围,然后再看规律情况,

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-1-5 13:39 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 天地一相 于 2023-1-5 13:41 编辑
tanglf188 发表于 2023-1-5 13:04
工作表三种常用命名:
1、Sheets("表名").Range(.... 常用的是这种
2、Sheet1.Range(....  你说的是这 ...

糊涂了我,你那个索引号具体成数字若和我说的不同,岂不是相当于自定义表名就是数字名称?难道,那数字只是表内各个表的排列顺序?

TA的精华主题

TA的得分主题

发表于 2023-1-5 13:48 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
天地一相 发表于 2023-1-5 13:39
糊涂了我,你那个索引号具体成数字若和我说的不同,岂不是相当于自定义表名就是数字名称?难道,那数字只 ...

是啊,索引号就是表从左向右的顺序编号

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-1-5 13:51 | 显示全部楼层
tanglf188 发表于 2023-1-5 13:48
是啊,索引号就是表从左向右的顺序编号

啊,这样呀,谢谢你。这样也挺好。那就可以规定从第几个表格开始是A,然后就是每张表格内需要统计的数据的边界定义了。目前,似乎是对全表统计的。

TA的精华主题

TA的得分主题

发表于 2023-1-5 14:08 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
天地一相 发表于 2023-1-5 13:51
啊,这样呀,谢谢你。这样也挺好。那就可以规定从第几个表格开始是A,然后就是每张表格内需要统计的数据 ...

是的,我指定的就是i=2,也就是从第二张表开始统计的,直至最后一张表
写了标注了,方便你自己修改
Sub test()
    Sheet1.Rows("4:4").ClearContents '清除表1第四行数据
    k = 3 '初始列号(C列)
    For i = 2 To Worksheets.Count '从第二张表至最后一张表
        countrow = Sheets(i).UsedRange.Cells(Sheets(i).UsedRange.Rows.Count, 1).Row '第i张表的最大有效行号
        countcol = Sheets(i).UsedRange.Cells(1, Sheets(i).UsedRange.Columns.Count).Column '第i张表的最大有效列号
        num2str = Replace(Cells(1, countcol).Address(0, 0), "1", "") '第i张表的最大有效行号,转换成字母列号
        Sheet1.Cells(4, k) = Application.CountIf(Sheets(i).Range("A1:" & num2str & countrow), Right(Sheet1.Cells(3, k), 1))  '统计第i张表统计数据,统计值为第一张表第三行第k列单元格内容最右边的数字(0)
        col = (Worksheets.Count - 1) * 1 + k '计算第二个统计数字写入的列号
        Sheet1.Cells(4, col) = Application.CountIf(Sheets(i).Range("A1:" & num2str & countrow), Right(Sheet1.Cells(3, col), 1))  '统计第i张表统计数据,统计值为第一张表第三行第col列单元格内容最右边的数字(1)
        col = (Worksheets.Count - 1) * 2 + k '计算第三个统计数字写入的列号
        Sheet1.Cells(4, col) = Application.CountIf(Sheets(i).Range("A1:" & num2str & countrow), Right(Sheet1.Cells(3, col), 1))  '统计第i张表统计数据,统计值为第一张表第三行第col列单元格内容最右边的数字(2)
        col = (Worksheets.Count - 1) * 3 + k '计算第四个统计数字写入的列号
        Sheet1.Cells(4, col) = Application.CountIf(Sheets(i).Range("A1:" & num2str & countrow), Right(Sheet1.Cells(3, col), 1))  '统计第i张表统计数据,统计值为第一张表第三行第col列单元格内容最右边的数字(3)
        col = (Worksheets.Count - 1) * 4 + k '计算总和写入的列号
        Sheet1.Cells(4, col) = Application.Sum(Sheets(i).Range("A1:" & num2str & countrow)) '第i张表求和
        k = k + 1
    Next
    Sheet1.Select
End Sub

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2023-1-5 15:05 | 显示全部楼层
试试吧,我理解的是这样

统计求助1.zip

15.39 KB, 下载次数: 4

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2023-1-5 16:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-19 22:49 , Processed in 0.050153 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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