设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2100|回复: 2
打印 上一主题 下一主题

急问关于access的问题,跪谢!!!!!!

[复制链接]
跳转到指定楼层
1#
发表于 2005-4-29 18:31:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Option Compare Database




Private Sub Command4_Click()
DoCmd.Close
Dim db As DAO.Database
Dim rs As DAO.Recordset, rst As DAO.Recordset
Dim str As String, n As Integer
Set db = CurrentDb
db.Execute ("delete * from 薪资表")
Set rst = db.OpenRecordset("人事基本资料")
  rst.MoveFirst
While Not rst.EOF
Set rs = db.OpenRecordset("薪资表")
   rs.AddNew
   rs(0) = rst(0)
   rs(1) = rst(17)
   rs(4) = rst(12)
   rs(5) = rst(13)
   rs(6) = rst(14)
   rs(8) = rst(15)
   rs(13) = rst(16)
   If rst(10) = True Then
      rs(14) = 75
   Else
      rs(14) = 0
   End If
   If rst(11) = True Then
      rs(11) = 30
   End If
   n = ((Year(Date) - Left(rst(0), 4)) * 12 + Month(Date) - 1 - Mid(rst(0), 5, 2)) / 12 - 0.5
   Select Case n
        Case 0, 1, 2
           rs(10) = n * 15
        Case 3, 4, 5
           rs(10) = n * 20
        Case Is > 5
            rs(10) = 100 + 30 * (n - 5)
   End Select
   rs.Update
   rst.MoveNext
Wend
rs.Close
rst.Close
db.Close
DoCmd.OpenQuery ("薪资查询")
End Sub

Private Sub Command8_Click()
DoCmd.Close
End Sub

注:我运行时老时提示(n = ((Year(Date) - Left(rst(0), 4)) * 12 + Month(Date) - 1 - Mid(rst(0), 5, 2)) / 12 - 0.5........)有错,但我在一台服务上运行又没问题.多谢老师解答.谢谢!!!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-4-29 20:44:00 | 只看该作者
当出现有错误是,您可在错误处设置断点,然后监视各表达式的值及变量的值是否符合要求。根据出错的点来找原因。
3#
发表于 2005-5-6 19:52:00 | 只看该作者
提示表达式有错很多情况下是全角的关系,如括号、空格等,在英文状态下将表达式重新输一次就ok了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-2 21:23 , Processed in 0.091060 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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