|
3#
楼主 |
发表于 2007-3-28 22:34:00
|
只看该作者
时间函数汇总的那个帖子,小弟收集了 ,谢谢大大栽培~!
不过好像大大没有完全领会我的意思
我公司是每半年加一次工龄工资,做满一年再加一次,再作满6个月再加依此类推最多的可以累计加9年
一开始小弟的思路和大大是一样的,但是代码出来以后,计算的时候会出现一些奇怪的问题
有的不该加的,加了,该加的却没加,而且窗体中之筛选出一条记录来
我的代码如下:
Private Sub Command15_Click()
On Error GoTo err_Command15_Click
'定义整型变量
Dim number1 As Integer
'定义字符型变量
Dim STemp As String
'定义数据集变量
Dim Rs As ADODB.Recordset
'为定义的数据集变量分配空间
Set Rs = New ADODB.Recordset
'为打开数据表"工资数据总表"字符变量赋值
STemp = "select * from 工资数据总表 "
'打开"工资数据总表"数据表
Rs.Open STemp, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
Rs.MoveFirst
For i = 1 To Rs.RecordCount
If Val(Right(Format(Rs("rcsj"), "yyyymmdd"), 2)) <= 15 Then
number1 = (Val((Mid(Format(Me![查询年月], "yyyymm"), 3, 2)) - Val(Mid(Format(Rs("rcsj"), "yyyymmdd"), 3, 2))) * 12 + (Val((Right(Format(Me![查询年月], "yyyymm"), 2)) + 1) - Val(Mid(Format(Rs("rcsj"), "yyyymmdd"), 5, 2)))) Mod 6
If number1 = 0 Then
'修改文本字段值
Me![kh] = Rs("kh")
Me![dep] = Rs("dep")
Me![name] = Rs("name")
Me![rcsj] = Rs("rcsj")
Me![yeargz] = Rs("yeargz")
Me![Text11] = 50
Else
Rs.MoveNext '把记录指针移到下一条记录
End If
Else
number1 = (Val((Mid(Format(Me![查询年月], "yyyymm"), 3, 2)) - Val(Mid(Format(Rs("rcsj"), "yyyymmdd"), 3, 2))) * 12 + Val((Right(Format(Me![查询年月], "yyyymm"), 2)) - Val(Mid(Format(Rs("rcsj"), "yyyymmdd"), 5, 2)))) Mod 6
If number1 = 0 Then
'修改文本字段值
Me![kh] = Rs("kh")
Me![dep] = Rs("dep")
Me![name] = Rs("name")
Me![rcsj] = Rs("rcsj")
Me![yeargz] = Rs("yeargz")
Me![Text11] = 50
<F |
|