Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2105|回复: 2

[已解决]用数组修改考勤时间

[复制链接]
发表于 2011-9-28 16:19 | 显示全部楼层 |阅读模式
请教各位老师 如何 用数组修改考勤时间
条件是,判断姓名是否有重复的,如果有 相同姓名的  考勤时间全部修改为 本姓名的最小 考勤时间
请各位老师帮忙看看
谢谢了
最佳答案
2011-9-28 19:18
  1. Private Sub CommandButton1_Click()
  2.     ARR = Range("B2:C" & Range("B65536").End(3).Row)
  3.     For I = 1 To UBound(ARR)
  4.         For J = I To UBound(ARR)
  5.             If ARR(I, 1) = ARR(J, 1) Then
  6.                 If ARR(I, 2) > ARR(J, 2) Then
  7.                     ARR(I, 2) = ARR(J, 2)
  8.                 Else: ARR(J, 2) = ARR(I, 2)
  9.                 End If
  10.             End If
  11.         Next
  12.         Range("F" & I + 1) = ARR(I, 2)
  13.     Next
  14. End Sub
复制代码

sddsg.rar

9.35 KB, 下载次数: 8

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2011-9-28 19:18 | 显示全部楼层    本楼为最佳答案   
  1. Private Sub CommandButton1_Click()
  2.     ARR = Range("B2:C" & Range("B65536").End(3).Row)
  3.     For I = 1 To UBound(ARR)
  4.         For J = I To UBound(ARR)
  5.             If ARR(I, 1) = ARR(J, 1) Then
  6.                 If ARR(I, 2) > ARR(J, 2) Then
  7.                     ARR(I, 2) = ARR(J, 2)
  8.                 Else: ARR(J, 2) = ARR(I, 2)
  9.                 End If
  10.             End If
  11.         Next
  12.         Range("F" & I + 1) = ARR(I, 2)
  13.     Next
  14. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2011-9-28 20:28 | 显示全部楼层
zjdh 发表于 2011-9-28 19:18

谢谢了 {:091:}
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-24 01:31 , Processed in 0.263866 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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