设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[窗体] accecc中出现编码错误

[复制链接]
跳转到指定楼层
1#
发表于 2009-2-27 09:02:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示子程序或函数未定义
Private Sub cmdenter_click()
Dim strpassword, strusername As String
Dim flag As Integer
Dim record As ADODB.Recordset
flag = 0
openrecord "select*from 用户登录表", record
Do Until record.EOF
strusername = record("用户名")
strpassword = record("密码")
If UCase(Me.Txtusername.Value) <> UCase(strusername) Then
record.MoveNext
Else
flag = 1
Exit Do
End If
Loop
If flag = 0 Then
MsgBox "该用户名不存在,请重新输入!"
Me.txtpassword = ""
Me.Txtusername = "123"
Me.Txtusername.SetFocus
cmdenter.Enabled = False
Exit Sub
Else
If UCase(Me.txtpassword.Value) <> UCase(strpassword) Then
MsgBox ("密码错误,请重新输入")
Me.txtpassword.Value = ""
Me.txtpassword .SetFocus
cmdenter.Enabled = False
Exit Sub
End If
End If
DoCmd.Close
DoCmd.OpenForm "主界面"
End Sub
Private Sub cmdexit_Click()
On Error GoTo Err_cmdexit_Click

    DoCmd.Close
Exit_cmdexit_Click:
    Exit Sub
Err_cmdexit_Click:
    MsgBox Err.Description
    Resume Exit_cmdexit_Click
   
End Sub
Private Sub Form_Current()
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case Me.ActiveControl.Name
Case "txtusername":
If Me.ActiveControl.Text = "" Or IsNull(Me.ActiveControl.Text) Then
cmdenter.Enabled = False
Exit Sub
Else
If Me.txtpassword.Value = "" Or IsNull(Me.txtpassword.Value) Then
cmdenter.Enabled = False
Exit Sub
End If
End If
Case "txtpassword":
If Me.ActiveControl.Text = "" Or IsNull(Me.ActiveControl.Text) Then
cmdenter.Enabled = False
Exit Sub
Else
If Me.Txtusername.Value = "" Or IsNull(Me.Txtusername.Value) Then
cmdenter.Enabled = False
Exit Sub
End If
End If
Case Else:
Exit Sub
End Select
cmdenter.Enabled = True
Exit Sub
End Sub
Private Sub Form_Open(Cancel As Integer)
cmdenter.Enabled = False
Form.KeyPreview = True
End Sub
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2009-2-27 09:04:17 | 只看该作者
vb与access联接的登录界面无法进入!!!!
3#
发表于 2009-2-27 09:05:59 | 只看该作者
是不是这个UCase没有定义?
4#
 楼主| 发表于 2009-2-27 09:57:58 | 只看该作者
在那里定义呢,好像不行,运行到openrecord "select*from 用户登录表", record这行提示子程序或函数未定义
5#
发表于 2009-2-27 10:11:43 | 只看该作者
select*from 用户登录表
这里少了空格
6#
 楼主| 发表于 2009-2-27 10:47:18 | 只看该作者
不是
7#
发表于 2009-2-27 10:58:15 | 只看该作者
openrecord ACCESS帮助中没有,会不会是这个出错了
8#
发表于 2009-2-27 11:33:05 | 只看该作者
openrecord 应该是一个过程的名称,后面的"select*from 用户登录表",record 只是这个过程的参数,你的代码如果是从其它的位置复制过来的,请在原代码文件中查找这个过程并复制过来。
又或是,代的代码应该这样写:record.open  "select * from 用户登录表",[连接字串],...,...
当然在后一种情况下,在record.open  "select * from 用户登录表",[连接字串],...,...
前面还应该加上连接字串和 set record=new adodb.recordset  等等

最好能把你的示例放上来,不然大家只能猜谜了。
9#
发表于 2009-2-27 12:22:31 | 只看该作者

一个贴子我只一次,虽然我很珍惜这种猜谜的机会。

楼主,下次贴这种问题的时候建议指出代码出错在哪一句。事先也最好能自己做个单步调试。再不行就逐步删除一部分代码以缩小范围。


******************
*  一切皆有可能  *
******************

.
ACMAIN - Access论坛回贴准则(个人).
.

.
QQ群 48866293 / 12035577 / 7440532 / 13666209
http://forum.csdn.net/BList/OtherDatabase .
http://www.accessbbs.cn/bbs/index.php .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
http://www.office-cn.net .
.
http://www.office-cn.net/home/space.php?uid=141646 .
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-1 17:56 , Processed in 0.080108 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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