Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

超管用的一句话代码(更新至11条)

时 间:2010-02-04 08:22:27
作 者:trynew   ID:2645  城市:广州
摘 要:vba
正 文:

有时候,一些看似很难的问题或应用,竟然用一句代码就可以搞定!下面是我举的一个例子,也希望大家参与讨论,把你平常所用的一句代码共享出来,我加以整理,放到这里大家共享。

一句话代码:
1、组合框的循环选择
        在双击事件中加入,也可用在键盘按上下箭头事件中:
         Screen.ActiveControl.ListIndex = (Screen.ActiveControl.ListIndex + 1) Mod Screen.ActiveControl.ListCount

2、窗体单击及移动记录时选定记录(反黑显示)
       在成为当前事件中加入:
        DoCmd.RunCommand acCmdSelectRecord

3、组合框获得焦点后自动张开
      在获得焦点事件中加入:
        Combo0.Dropdown

4、文本框获得焦点后光标自动移动到文本的末尾
      在获得焦点事件(如有必要也在鼠标释放事件)中加入:
      Text0.SelStart = Len(Text0)

5、随机抽取指定数量记录的查询
     在查询语句中Rnd([编号]) 的编号为表中的自动编号字段名:
      Select TOP 10 *  FROM 表1 orDER BY Rnd([编号]);

6、打印窗体中筛选显示的记录
     报表的记录源药与窗体的相同,在窗体的打印按钮单击事件中:
      DoCmd.OpenReport "报表名", acViewPreview, , Me.Filter

7、去除窗体及子窗体的筛选及排序
     跟“记录”菜单中的“取消筛选/排序”作用相同:
      DoCmd.ShowAllRecords

8、数据更改后提醒是否保存
     在窗体的更新后事件中(Form_BeforeUpdate):
      If Not (Cancel = (MsgBox("数据已更改,是否保存?", vbOKCancel + vbQuestion) = vbCancel)) Then DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70

9、选定一个选项,自动把与选项相关信息辅助录入(即一拖几)
    在选项的更改事件中,用Dlookup函数查找相关信息并辅值给当前记录:
      供货商=DLookup("公司名称", "供货商资料", "[供货商编号]= '" & Me![供货商编号] & "'")

10、设置字段的默认值为当前表的最后一条记录的值(或序号加1)
    在窗体的成为当前事件中,用Dlast函数查找最后记录相关值并辅值给字段的默认值:
     成绩.DefaultValue = "'" & DLast("成绩", Me.RecordSource) & "'"

11、删除重复记录(字段)
    表中要有自动编号字段(ID),可建立删除查询或执行RunSql语句(其中[  ]填写对应的表名、重复字段名、关键字段名):
    Delete * FROM [表] Where DCount("[字段]","[表]","[字段]='" & [字段] & "'")>1 AND [ID]>DLookUp("[ID]","[表]","[字段]='" & [字段] & "'") or [字段] Is Null;

12、班级成绩排名查询
    可根据年级、班级和不同科目替换查询中的相应字段名:
    Select *, [英语]+[数学]+[语文] AS 总分, DCount("*","成绩表","[年级]='" & [年级] & "' and ([英语]+[数学]+[语文])>" & [英语]+[数学]+[语文])+1 AS 年级名次 FROM 成绩表 orDER BY 成绩表.年级, [英语]+[数学]+[语文] DESC;



Access软件网QQ交流群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助