设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[Access本身] 求助

[复制链接]
跳转到指定楼层
1#
发表于 2008-9-17 11:19:21 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
修改职工按钮代码如下:
Private Sub 修改职工_Click()
On Error GoTo Err_修改职工_Click
'定义用于循环的整型变量
Dim i 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
'判断"职工ID"等文本框是否为空
If IsNull(Me![职工ID]) = Ture Then
'弹出提示"职工ID"文本框不可以为空信息
MsgBox "请输入 职工ID 它不能为空!", vbOKOnly, "输入职工ID"
'把光标置于"职工ID"文本框内
Me![职工ID].SetFocus
ElseIf IsNull(Me![部门ID]) = True Then
'弹出提示"所属部门"文本框不可以为空信息
MsgBox "请输入 部门ID 它不能为空!", vbOKOnly, "输入部门ID"
'把光标置于"部门ID"文本框内
Me![部门ID].SetFocus
ElseIf IsNull(Me![职务]) = True Then
'弹出提示"职务"文本框不可以为空信息
MsgBox "请输入 职务 它不能为空!", vbOKOnly, "输入职务"
'把光标置于"职务"文本框内
Me![职务].SetFocus
ElseIf IsNull(Me![姓名]) = True Then
'弹出提示"姓名"文本框不可以为空信息
MsgBox "请输入 姓名 它不能为空!", vbOKOnly, "输入姓名"
'把光标置于"姓名"文本框内
Me![姓名].SetFocus
ElseIf IsNull(Me![性别]) = True Then
'弹出提示"性别"文本框不可以为空信息
MsgBox "请输入 性别 它不能为空!", vbOKOnly, "输入性别"
'把光标置于"性别"文本框内
Me![性别].SetFocus
Else
'把数据集指针指向第一条记录
Rs.MoveFirst
'使用 FOR...NEXT循环在数据集中搜索相同"职工ID"记录
For i = 1 To Rs.RecordCount
      If Rs("职工ID") = Me![职工ID] Then
      '修改"职工基本资料管理"数据表字段值
      Rs("部门ID") = Me![部门ID]
      Rs("职务") = Me![职务]
      Rs("姓名") = Me![姓名]
      Rs("性别") = Me![性别]
      Rs("年龄") = Me![年龄]
      Rs("最高学历") = Me![最高学历]
      Rs("婚姻状况") = Me![婚姻状况]
      Rs("健康状况") = Me![健康状况]
      Rs("民族") = Me![民族]
      Rs("身份证ID") = Me![身份证ID]
      Rs("补贴") = Me![补贴]
      Rs("联系方式") = Me![联系方式]
      Rs("备注") = Me![备注]
      '使用记录集的Update 方法来刷新记录集
      Rs.Update
      '弹出"修改完成"的提示信息
      MsgBox "职工信息修改完成!", vbOKOnly, "修改完成"
      '退出子过程
      Exit Sub
    Else
    '把记录指针移到下一条记录
      Rs.MoveNext
    End If
  Next i
  End If
    '刷新"职工基本资料管理 子窗体"窗体
    Me![职工基本资料管理 子窗体].Requery
    '释放系统为Rs数据集分配的空间
    Set Rs = Nothing
Exit_修改职工_Click:
  Exit Sub
Err_修改职工_Click:
  MsgBox Err.Description
  Resume Exit_修改职工_Click
End Sub


运行,系统提示“请输入 部门ID 它不能为空”
  
到底哪里出错了? 郁闷
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
3#
 楼主| 发表于 2008-9-17 16:01:28 | 只看该作者
谢谢
2#
发表于 2008-9-17 11:28:54 | 只看该作者

If IsNull(Me.职工ID)  Then
就可以了

为了安全起见最好这样写
if Me.职工ID="" or IsNull(Me.职工ID)  Then
防止输入资料后再清除会跳过isnull的检测
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-9-22 07:29 , Processed in 0.092229 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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