注册 登录
Office中国论坛/Access中国论坛 返回首页

的个人空间 http://www.office-cn.net/?0 [收藏] [复制] [分享] [RSS]

日志

小技巧集锦2010-8-14更新

热度 13已有 2668 次阅读2008-6-15 17:06 |个人分类:Access技巧|

1.使用背景图片快速创建窗体的方法:
在窗体设计时,可以将现有的纸质单据等扫描保存到电脑,然后将窗体的背景图片设置为此图片,再把所有输入框等控件放置到对应的位置,并将边框和背景设置为透明,这样可以得到和实体单据报表等完全相同的外观效果。

2.用DLOOKUP函数一次提取多个字段值的方法:
用将要提取的字段和特定分隔符连接起来,将值传递给变量,再用Split函数将每个字段的值提取出来,这样就只使用了一次DOOKUP函数进行提取字段值,减低了域聚合函数速度较慢带来的影响,不过要注意的是这个方法对文本类字段效果最好,其它字段需要注意数据类型的变化,另外就是使用的分隔符必须要在需要提取的字段内容中不会出现,不然就会出错。

3.调用其它窗体中事件过程的方法:
将窗体中的函数或过程声明为Public,然后就可以像下面这样在其它地方调用了:
方式一:       Call Form_Form1.Command1_Click
方式二:       Call Forms!Form1.Command1_Click
第二种调用方式智能感知功能不会起作用,对于带参数的子过程或函数,也不会提示参数。

4.设置窗体中控件默认属性的方法:
打开属性对话框后,再点击“工具箱”中的按钮,这时属性窗体标题就变成了“默认 文本框”、“默认 标签”、“默认 命令按钮”这样的,这时我们就可以设置控件的默认属性了,修改之后再创建控件默认属性就变成刚才修改之后的属性。不过此方作用范围只在那一个窗体中,换一个窗体又得另外设置了。

5.关于DLOOKUP等域聚合函数的适用范围:
一直都听说域函数的速度慢,但具体怎么个慢法,还是不清楚,经大概测试了一下,记录条数在5000以内,影响很小,超过5000条记录影响就出来了

6.VBA编程时用到的系统常数的前缀表示的意义:
 vb  VBA常数 
 db  DAO常数
 ac  ACCESS常数
 ad  ADODB常数

7.IIF函数使用的时机:
IIF函数运行起来相当慢,所以只在表达式中使用它,在VBA代码中请使用等效的适当格式化后的If...Then...Else...End If块替代.

8.ACCESS数据库在以下任意一种情况下性能会会差(只是相对的):
 大约10万条以上的记录,10个以上的并发用户,数据库大于100M

9.怎样单独移动一个已绑定到其它控件的标签,而不移动它所绑定的控件:
 当一个标签绑定到控件时,移动其中任何一个,另一个也会随之移动,要只移动其中一个,在选中之后,会在边框上出现6个黑色小方块,这时在左上角最大的那个小方块上按下鼠标左键再移动鼠标就行了。

10.ACCESS 2007窗体或报表主体节中的备用背景色的用途:
 当设置了备用背景色时,在窗体的连续窗体视图中主体节就会以背景色和备用背景色交替显示,不过需要注意的是控件的背景样式必须为透明,否则会遮挡主体节中的背景色.

11.怎样为一个已有的控件创建关联标签:
 先单击该控件,使其为选中状态,然后再创建的标签就会自动与其关联.

12.VBA中Call关键字好像没什么用处:
 使用Call关键字能够增加代码的可读性.

13.私有过程和公共过程重名时会不会发生冲突:
 私有过程的的优先级要高于公共过程, 在声明私有过程的模块中调用过程时,系统会优先执行私有模块的代码.

14.当一个过程被声明为静态过程时,在过程中使用dim声明的变量也会被当作静态变量处理

15.在同一行中声明多个变量时易犯的错误:
 Dim a,b,c,d As Integer
 这种声明方法是错误的,只有最后一个变量被显示的声明成了Integer型,其它的都被当作了变体变量处理
 必须对每个变量的类型作出显示声明:
 Dim a As Integer,b As Ingeger,c As Integer,d As Integer

16.窗体或报表设计时进行控件微调:
在窗体或报表的设计视图中,选中控件后,使用快捷键(Ctrl + 箭头键)可对控件位置进行微调,每次调整1像素。使用快捷键(Ctrl + Shift + 箭头键)可对控件大小进行微调,每次调整1像素。

17.将已有控件放入选项卡页面:
在窗体或报表设计视图中,如果要把已创建的控件添加到选项卡的某个页面,先选中控件,然后用菜单或快捷键(
Ctrl + X)剪切,再单击该选项卡页面的标题位置,以激活该页面,按用快捷键(Ctrl + V)进行粘贴,即可实现将已创建的控件放入到选项卡页面。

 

18.查看不能完全显示的文本内容:
在表、查询、窗体中,当某个文本框或组合框的内容很多而显示不全时,按下快捷键(Shift+F2)可以打开缩放窗口,来显示当前获得焦点的输入框的内容。

 

19.  当组合框获得焦点时,按下快捷键(F4)可以展开或收缩组合框的下拉列表。

 

20.  在窗体或报表的设计视图中,添加线条控件时,按住Shift键能使线条保持不倾斜。

 

21.通过设置格式提示必填项:
将文本框的格式属性设置为【&;[红色]”(必填项)”】可以实现文本框为空时,以红色字体显示并提示该文本框为必填内容。(注意:这里中文方括号只是为了看起来明了,实际使用时不要往格式属性中输入,下同。)

22.将文本框的或数值型字段的格式设为【#】可实现屏蔽零值,即为0时不显示。

23.将是否字段的值显示成“是、否”:
在数据表视图中,是否字段绑定到文本框或者组合框后,显示的是
-10,将其格式属性设为【;””;”】,可实现显示为“是”和“否”,当然也可以设置为其它值。

 

24.使用窗体级快捷键:
如果没有使用AutoKeys宏,想在窗体中使用F1F12这些按键作为自定义快捷键,可以将窗体的键预览属性设为“是”,然后在窗体的键按下事件中判断KeyCode参数的值后将KeyCode参数赋值为0(屏蔽Access系统快捷键),然后再运行相应的快捷键功能即可。

25.快速录入辅助功能:
输入当前日期(Ctrl+; ),输入当前时间(Ctrl + Shift + ;),输入前一条记录中当前焦点所在字段的值(Ctrl + ‘)。

26.无须定义即可使用的类模块:
一般我们创建的自定义类模块,在其它地方使用时必须先声明,并用New关键字进行初始化,例如:

Dim cls As New clsMyCustom

Set cls=New clsMyCustom

其实还可以实现无需声明直接调用该类模块的方法或属性,实现的操作步骤为:将这个类模块导出为一个扩展名为.cls的文本文件,然后用记事本打开,将开头部位(一般是第8行)中的Attribute VB_PredeclaredId=False改为Attribute VB_PredeclaredId=True并保存,再重新将这个文件导入到Access中。这样我们就可以无须声明而直接使用了,例如:clsMyCustom.FunTest

27.程序图标使用相对路径:
Access启动设置里可以设置图标,我们只要把它设为 .\myico.ico即可实现相对路径的使用。也就是用一个小圆点来代替当前目录的路径。

28.用资源管理器打开文件夹或打开任意关联文件:
Shell "explorer C:\test"
Shell "explorer C:\test\test.doc"
Shell "explorer C:\test.pdf"

29.一次创建多级目录:
用MkDir函数平时创建多级目录时,需要一个文件夹一个文件夹的创建,用下面的函数可一次性创建:
Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal DirPath As String) As Long

30.在VBA中使用用户窗体(用户窗体的菜单默认被隐藏了):
在VBE界面菜单栏上点右键——自定义——命令——插入——用户窗体,把插入用户窗体的菜单加到现有菜单中。
自定义——命令——工具——附加控件,将添加自定义控件的菜单加到现在菜单中,即可在用户窗体中使用自定义控件。

刚表态过的朋友 (0 人)

发表评论 评论 (1 个评论)

回复 wang1950317 2012-9-6 06:59
非常好的材料!保存备用!谢谢!

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

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

GMT+8, 2024-4-27 13:56 , Processed in 0.052870 second(s), 15 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

返回顶部