ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[建议&疑问] 如何查出谁没有交excel表

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-7-15 16:58 | 显示全部楼层 |阅读模式
前因:每个月都要求全部门同事上交一份excel交代自己做了什么,希望能查出谁没有交,希望能自动把各excel的值赋值集成到一张总表上。
求问1:如何获取各excel工作簿的文件名,使之成为一列,这样我就可以筛选重复值,来查出谁没有交。 2013年6月.zip (790.07 KB, 下载次数: 2)

eg:文件夹中有曾思敏、陈聪 两个excel表格,在一空表中输入vba,能直接在A:A上显示出 A1曾思敏 A2 陈聪……

求问2:优化代码,用 for i=1 的语句优化我宏1的代码,使运行速度加快,出现错误率低
文件夹中有一文件:运行研发部2013年X月技术人员考核统计表.xlsm,
查看vbe能够发现,我的模块一代码其实很繁琐,能否优化。 (PS:我之所以用indirect转值是为了方便更改,您知道有些人员变动,能方便更改,还有 Sheets("潘顺娥").[D2] = wkSht.[D2]
  Sheets("潘顺娥").[G2] = wkSht.[G2]之所以类似这样赋值,是因为有些员工交表不是按统一模板,如果直接取值容易发生错误值)

求问3:该添加一个什么语句,让自动跳转下一个指令
eg:朱尔琴下有三人:刘志恒、姚学铜、钟晶,我运行命令时,一旦刘志恒没有搜索到,则姚学铜、钟晶的分数亦不能获取。代码如下:

Sub getmark_zhuerqin()  '获取朱尔琴下层级3人的分数
  Dim myApp As New Application, wkSht As Worksheet
  '隐藏Excel
  myApp.Visible = False
    '打开刘志恒表,并指定工作表对象
  Set wkSht = myApp.Workbooks.Open(ThisWorkbook.Path & "\刘志恒.xls").Sheets(1)
  Sheets("刘志恒").[D2] = wkSht.[D2]
  Sheets("刘志恒").[G2] = wkSht.[G2]
  Sheets("刘志恒").[I2] = wkSht.[I2]
  Sheets("刘志恒").[K2] = wkSht.[K2]
  Sheets("刘志恒").[F3] = wkSht.[F3]
  Sheets("刘志恒").[F4] = wkSht.[F4]
  Sheets("刘志恒").[F5] = wkSht.[F5]
  Sheets("刘志恒").[K10] = wkSht.[K10]
  Sheets("刘志恒").[K11] = wkSht.[K11]
  Sheets("刘志恒").[K12] = wkSht.[K12]
  Sheets("刘志恒").[K13] = wkSht.[K13]
  Sheets("刘志恒").[K14] = wkSht.[K14]
  Sheets("刘志恒").[K15] = wkSht.[K15]
  Sheets("刘志恒").[K16] = wkSht.[K16]
  Sheets("刘志恒").[K17] = wkSht.[K17]
  Sheets("刘志恒").[K18] = wkSht.[K18]
  Sheets("刘志恒").[K19] = wkSht.[K19]
  Sheets("刘志恒").[E20] = wkSht.[E20]
  '关闭Excel
  myApp.Quit
'打开姚学铜表,并指定工作表对象
  Set wkSht = myApp.Workbooks.Open(ThisWorkbook.Path & "\姚学铜.xls").Sheets(1)
  Sheets("姚学铜").[D2] = wkSht.[D2]
  Sheets("姚学铜").[G2] = wkSht.[G2]
  Sheets("姚学铜").[I2] = wkSht.[I2]
  Sheets("姚学铜").[K2] = wkSht.[K2]
  Sheets("姚学铜").[F3] = wkSht.[F3]
  Sheets("姚学铜").[F4] = wkSht.[F4]
  Sheets("姚学铜").[F5] = wkSht.[F5]
  Sheets("姚学铜").[K10] = wkSht.[K10]
  Sheets("姚学铜").[K11] = wkSht.[K11]
  Sheets("姚学铜").[K12] = wkSht.[K12]
  Sheets("姚学铜").[K13] = wkSht.[K13]
  Sheets("姚学铜").[K14] = wkSht.[K14]
  Sheets("姚学铜").[K15] = wkSht.[K15]
  Sheets("姚学铜").[K16] = wkSht.[K16]
  Sheets("姚学铜").[K17] = wkSht.[K17]
  Sheets("姚学铜").[K18] = wkSht.[K18]
  Sheets("姚学铜").[K19] = wkSht.[K19]
  Sheets("姚学铜").[E20] = wkSht.[E20]
  '关闭Excel
  myApp.Quit
'打开钟晶表,并指定工作表对象
  Set wkSht = myApp.Workbooks.Open(ThisWorkbook.Path & "\钟晶.xls").Sheets(1)
  Sheets("钟晶").[D2] = wkSht.[D2]
  Sheets("钟晶").[G2] = wkSht.[G2]
  Sheets("钟晶").[I2] = wkSht.[I2]
  Sheets("钟晶").[K2] = wkSht.[K2]
  Sheets("钟晶").[F3] = wkSht.[F3]
  Sheets("钟晶").[F4] = wkSht.[F4]
  Sheets("钟晶").[F5] = wkSht.[F5]
  Sheets("钟晶").[K10] = wkSht.[K10]
  Sheets("钟晶").[K11] = wkSht.[K11]
  Sheets("钟晶").[K12] = wkSht.[K12]
  Sheets("钟晶").[K13] = wkSht.[K13]
  Sheets("钟晶").[K14] = wkSht.[K14]
  Sheets("钟晶").[K15] = wkSht.[K15]
  Sheets("钟晶").[K16] = wkSht.[K16]
  Sheets("钟晶").[K17] = wkSht.[K17]
  Sheets("钟晶").[K18] = wkSht.[K18]
  Sheets("钟晶").[K19] = wkSht.[K19]
  Sheets("钟晶").[E20] = wkSht.[E20]
  '关闭Excel
  myApp.Quit

Set wkSht = Nothing
  Set myApp = Nothing
  End Sub



这三个问题,求解,谢谢。本人还是菜鸟,因基础较烂,如果问得不当,请海涵。

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-7-15 17:03 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
附件貌似下不下来,再发一次

2013年6月.zip

790.07 KB, 下载次数: 2

问题附件

TA的精华主题

TA的得分主题

发表于 2013-7-23 15:00 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-8-1 13:43 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-26 09:11 , Processed in 0.029362 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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