|
楼主 |
发表于 2011-4-25 14:25
|
显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
原帖由 gufengaoyue 于 2011-4-25 13:20 发表
这么长的公式
你不如上个附件,将哪些数据哪个单元格之间的关系说明一下就好了
公式太长了
Sub Macro1()
'
' Macro1 Macro
'
'
ActiveSheet.Paste
ActiveCell.FormulaR1C1 = _
"=IF(AND(VALUE(R[-2]C[13])=1,R[-2]C[8]<VALUE(""8:30""))=TRUE,""早班上班打卡"",IF(AND(VALUE(R[-2]C[13])=1,R[-2]C[8]>VALUE(""8:30""),R[-2]C[8]<VALUE(""12:00""))=TRUE,""早班迟到打卡"",IF(AND(R[-2]C[13]=1,R[-2]C[8]>=VALUE(""12:00""),R[-2]C[8]<=VALUE(""13:00""))=TRUE,""下午上班打卡"",IF(AND(VALUE(R[-2]C[13])=1,R[-2]C[8]>VALUE(""13:00""),R[-2]C[8]<VALUE(""17:00""))=TRUE,""下午迟到打卡"",""""))))&IF(AND(R[-2]C[13]>=2,ABS(R[-2]C[8]-R[-3]C[8])<=0.0007)=TRUE,""重复打卡"",IF(AND(R[-2]C[13]>=2,ABS(R[-2]C[8]-R[-3]C[8])>0.0007,R[-2]C[8]<VALUE(""8:30""))=TRUE,""早班重复上班打卡"",IF(AND(R[-2]C[13]>=2,ABS(R[-2]C[8]-R[-3]C[8])>0.0007,R[-2]C[8]>VALUE(""8:30""),R[-2]C[8]<VALUE(""12:00""))=TRUE,""早班早退打卡"","""")))&IF(AND(R[-2]C[13]>=2,ABS(R[-2]C[8]-R[-3]C[8])>0.0007,R[-2]C[8]>=VALUE(""12:00""),R[-2]C[8]<=VALUE(""13:00""))=TRUE,""下午上班打卡"",IF(AND(R[-2]C[13]>=2,ABS(R[-2]C[8]-R[-3]C[8])>0.0007,R[-2]C[8]>VALUE(""13:00""),R[-2]C[8]<VALUE(""17:00""))=TRUE,""下午早退打卡"",""""))&IF(AND(R[-2]C[13]=0,R[-2]C[8]<VALUE("
"8:30""))=TRUE,""早班上班打卡"",IF(AND(R[-2]C[13]=0,R[-2]C[8]>VALUE(""8:30""),R[-2]C[8]<VALUE(""12:00""))=TRUE,""早班早退打卡"",IF(AND(R[-2]C[13]=0,R[-2]C[8]>=VALUE(""12:00""),R[-2]C[8]<=VALUE(""13:00""))=TRUE,""下午上班打卡"",IF(AND(R[-2]C[13]=0,R[-2]C[8]>VALUE(""13:00""),R[-2]C[8]<VALUE(""17:00""))=TRUE,""下班早退打卡"",""""))))"
Range("A4").Select
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
End Sub |
|