ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Excel VBA > 如何利用VBA代码统计休假问题

如何利用VBA代码统计休假问题

作者:绿色风 分类: 时间:2022-08-18 浏览:133
楼主
xyf2210
Q:如何利用VBA代码统计休假问题?
A:
  1. Sub test()
  2.     Dim arr, d
  3.     Set d = CreateObject("scripting.dictionary")   '引用字典
  4.     arr = Sheets("休假统计").Range("a1").CurrentRegion
  5.     For i = 2 To UBound(arr)               '循环数据,将数据合并写入字典
  6.         d(arr(i, 2) & arr(i, 3) & Left(arr(i, 4), 2)) = arr(i, 4)
  7.     Next
  8.     arr = Sheets("2月份").Range("a1").CurrentRegion
  9.     For i = 2 To UBound(arr)
  10.         For j = UBound(arr, 2) - 3 To UBound(arr, 2)
  11.             If arr(i, j) = "未签到" Then           '判断未签到
  12.                 If d.exists(arr(i, 3) & arr(i, 4) & Left(arr(1, j), 2)) Then     '判断关键字是否存在
  13.                     arr(i, j) = d(arr(i, 3) & arr(i, 4) & Left(arr(1, j), 2))
  14.                 End If
  15.             End If
  16.         Next
  17.     Next
  18.     Sheets("新表").Range("a1").Resize(UBound(arr), UBound(arr, 2)) = arr      '将数据写入新工作表
  19.     Set d = Nothing
  20. End Sub

VBA统计休假问题.rar
2楼
wise
学习字典和数组

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap