ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 实在整不会了,只好来当伸手党了。求解决提取文件夹下特定工作表的特定行数据的问题

[复制链接]

TA的精华主题

TA的得分主题

发表于 2022-7-5 22:52 | 显示全部楼层 |阅读模式
上个月开始陆陆续续学习VBA,结果写第一个程序就踢到铁板了。

我的需求是这样的:在不需要打开其中的工作簿的情况下,读取某一文件夹下(如果在程序中设置目标文件夹比较麻烦,那干脆就设置成    D:\本月工资表   好了)下的所有的工资单,点击汇总表中的“开始提取”按钮,将其中每个工作簿中的某一张表的合计行提取到本汇总表中,提取出来的汇总数据最前面还有一列以各工资单文件A2单元格中的文本值或是以文件名作为数据的索引号。
现在我想不明白的地方在于:1、文件夹中可能存在多种格式的工作簿,可能是xls/xlsx/xlsm格式都有,如何确保所有的文件不会因格式问题漏网?2、每一个工资表工作簿中可能有数量不等的工作表,我只需要取其中一张表头为“轨道公司工资单”的工作表中的合计行数据,由于这张表可能索引号、标签名、位置、是否激活等情况都不一致,我只能根据A1单元格的文本值是否为“轨道公司工资单”来判定是否是需要取值的工作表,如何来实现这一思路?3、合计行的位置是不定的,而且由于表后有行数不等的说明备注,也不能直接提取最后一行数据,我的想法是根据工资表中某一行第2列文本值是否为“总计”来判断是否是需要提取的合计数行号,不知是否可行?或者还有更简单的思路?
我也搜索过论坛里各位大佬已有的作品,似乎没有找到这种在工作表名称不确定、又需要提取特定一张工作表而且行号不确定的情况下批量提取某一行数据的案例,在此求各位大佬指点迷津!

工资表及汇总.zip

29.4 KB, 下载次数: 8

TA的精华主题

TA的得分主题

发表于 2022-7-6 01:27 | 显示全部楼层
1、文件夹中可能存在多种格式的工作簿,可能是xls/xlsx/xlsm格式都有,如何确保所有的文件不会因格式问题漏网?
  1. Dir(文件夹 & "\*.xls*")
复制代码
  1. For Each wSH In Sheets
  2. If wSH.Name Like "*轨道公司工资单" Then
  3. End If
  4. Next
复制代码
  1. Cells(Rows.Count,合计列所在列号).End(xlup).Row
复制代码
获取最后一行,然后往上找合计就是了

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2022-7-6 06:29 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
工资表及汇总.rar (57.3 KB, 下载次数: 21)

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-7-6 08:56 | 显示全部楼层
本帖最后由 练大脖子 于 2022-7-6 09:01 编辑
microyip 发表于 2022-7-6 01:27
1、文件夹中可能存在多种格式的工作簿,可能是xls/xlsx/xlsm格式都有,如何确保所有的文件不会因格式问题漏 ...

谢谢大佬的指点,还分了这么多项,感激不尽!
只是最后一项还是有点问题,因为该表最后几行可能会是数量不定的注释、说明,因此不能从最后一行向上取值,我的想法是查找本表中“总计”文本出现的行,并据此确定行号。

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-7-6 08:56 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2022-7-6 09:09 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-7-6 09:11 | 显示全部楼层

再次表示感谢!读完xiangbaoan和您的代码后,我最大的感受就是我好像大大低估了VBA实现自定义需求的难度……
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-9-29 07:21 , Processed in 0.039092 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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