设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

VBA代码必须得会吗?

[复制链接]

点击这里给我发消息

跳转到指定楼层
1#
发表于 2018-4-12 01:48:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在做公司的进销存系统,只要实现出入库记录和库存查询即可,一本书学到最后发现一个登陆验证需要VBA代码来完成
代码应该是在校验登陆的信息,我的疑问是这些操作必须得通过代码实现吗?有没有可能通过GUI点击来实现?因为从零开始学VBA需要很长时间才能做到以下代码的能力
代码示例
  1. Option Compare Database
  2. Option Explicit
  3. Dim mrc As ADODB.Recordset
  4. Dim txtSQL As String
  5. Dim i As Integer  '记录错误次数

  6. Private Sub 登录_Click()
  7. On Error GoTo Err_确定_Click '错误处理
  8. '判断用户名是否为空
  9. If IsNull(用户名) Then
  10. MsgBox "请输入用户名!", vbCritical, "提示"
  11.   用户名.SetFocus
  12. Else
  13.   txtSQL = "SELECT * from 管理员 where 用户名='" & 用户名 & "'"
  14. Set mrc = ExeSQL(txtSQL)
  15.    If mrc.EOF Then
  16.      MsgBox "没有该用户!", vbCritical, "提示"
  17.    Else
  18.      If (mrc(1) = 密码) Then
  19.      mrc.Close
  20.      Set mrc = Nothing
  21.      check = True
  22.      Me.Visible = False
  23.       '打开主切换面板
  24.      DoCmd.OpenForm "主切换面板"
  25.     Else
  26.         i = i + 1
  27.         If (i < 3) Then
  28.         MsgBox "您输入的密码不正确", vbOKOnly + vbExclamation, "提示"
  29.         Else
  30.         MsgBox "你已经连续3次错误输入密码,系统马上关闭!", vbOKOnly + vbExclamation, "警告"
  31.                 DoCmd.Close acForm, Me.Name  '关闭当前窗体
  32.                 DoCmd.Quit  '退出数据库
  33.                 Exit Sub
  34.        End If
  35.      密码.SetFocus
  36.      密码.Text = ""
  37.     End If
  38.   End If
  39. End If
  40. Err_确定_Click: '错误处理
  41.     Exit Sub
  42. Err_关闭_Click:
  43.     MsgBox (Err.Description)
  44.     Resume Err_确定_Click
  45. End Sub


  46. Private Sub 关闭_Click()
  47. If (MsgBox("确实要退出吗?", vbQuestion + vbYesNo, "确认") = vbYes) Then
  48. DoCmd.Quit acQuitSaveNone
  49. End If
  50. End Sub
复制代码
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
 楼主| 发表于 2018-4-12 02:09:00 | 只看该作者
竟然不允许编辑帖子

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点击这里给我发消息

3#
发表于 2018-4-12 02:11:33 | 只看该作者
要写功能灵活的程序,必须要有代码的支持的。有些功能可以通过宏来处理,但是宏毕竟是代码块,太重,未必能达到想要的效果。

点击这里给我发消息

4#
 楼主| 发表于 2018-4-12 03:29:57 | 只看该作者
苦于市面上关于access VBA的书籍和教程太少,大部分都是Excel的,难道access的应用真的很窄?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 01:40 , Processed in 0.092664 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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