当前位置:数据库 > Access >>

ACCESS VBA编程一

ACCESS VBA编程

一、       控件

1.       常量 控件

acBoundObjectFrame 绑定对象框 
acCheckBox 复选框 
acComboBox 组合框 
acCommandButton 命令按钮 
acCustomControl ActiveX(自定义)控件 
acImage 图像 
acLabel 标签 
acLine 线条 
acListBox 列表框 
acObjectFrame 未绑定对象框或图表 
acOptionButton 选项按钮 
acOptionGroup 选项组 
acPage 页 
acPageBreak 分页符 
acRectangle 矩形 
acSubform 子窗体/子报表 
acTabCtl 选项卡 
acTextBox 文本框 
acToggleButton 切换按钮
 

2.       在VB中对窗体控件的引用:

键入包含控件的窗体或报表的标识符,后面紧接 ! 运算符和控件的名称。例如,下列标识符将引用“订单”窗体上“订单ID”控件值: 
Forms![订单]![订单ID] 
引用子窗体或子报表上的控件,不必使用“窗体”或“报表”属性为窗体或报表指定完整的标识符。例如,可以使用下列标识符来引用“订单”子窗体上的“数量”控件: 
Forms![订单]![订单子窗体]![数量]
 

3.       判断窗体或报表中控件的数目,然后将该数目赋给一个变量:

Dim intFormControls As Integer
Dim intReportControls As Integer
intFormControls = Forms!Employees.Count
intReportControls = Reports!FreightCharges.Count
 

4.       设置控件可见性:

Dim i, ii As Integer
For ii = 3 To 10
     Me.Controls.Item(ii).Visible = True
Next
For i = 11 To 22
     Me.Controls.Item(i).Visible = False
Next
 

5.       按特殊名在VBA中设置控件的可见性:

For i = 27 To 47
  If Me.Controls.Item(i).Name Like "A*" Then
     Me.Controls.Item(i).Visible = False
  End If
    
Next
 

6.       指定一个控件能否接受焦点:

Enabled属性: 
me.控件.Enabled = true'能
                =false'不能
 

7.       指定一个控件能否被编辑:

locked
如:
me.控件.Locked = true
me.控件.Locked = false
 

8.       设置控件标题显示的文字:

Me.控件.Caption = "显示窗体"
 

9.       设置标签颜色:

Me.LabelColor =200
 

10.  获得焦点及失去焦点时字段变更颜色:

如果你的控件是文本框,名称为“txt字段”,写如下代码:
Private Sub txt字段_GotFocus()
  Me.txt字段.BackColor = 12632256
End Sub
当中“12632256”是灰色,你可以自己选择希望的颜色,如果想在失去焦点时改为原来的颜色,写如下代码:
Private Sub txt字段_LostFocus()
  Me.txt字段.BackColor = 16777215
End Sub
 

11.  使标签闪烁以引人注意:

设置窗体的TimerInterval 值为1000 (1秒).
forms OnTimer 加入代码:
Sub Form_Timer()
YourTextLabel.Visible = Not YourTextLabel.Visible
End_Sub
 

12.  设置标签字体颜色:

Me.Label1.ForeColor =
 

13.  设置文本框颜色:

Me.TextColor = 300
 

14.  设置文本框字体颜色:

Me.TextFontColor = 500
 

15.  标签等左边距离:

Me.Label2.Left = 2200
 

16.  定位控件:

Me.控件.Top = 8290
Me. 控件.Left = 100
 

17.  标签等字体粗细:

Me.Label2.FontWeight = 20000
 

18.  控件边框颜色:

Me.Label2.BorderColor = 0
 

19.  控件边框线条:

BorderStyle 属性使用以下设置:
透明 0 (仅对于标签、图表和子报表而言是默认值)透明的 
实线 1 (默认值)实线 
虚线 2 虚线 
短虚线 3 短虚线 
点线 4 点线 
稀疏点线 5 点距较宽的点线 
点划线 6 虚线与点线组合的点划线 
点点划线 7 虚线-点线-点线组合的点点划线 
双实线 8 双实线
 

20.  指定控件的边框宽度:

使用 BorderWidth 属性可以指定控件的边框宽度
取值:0或1-6
 

21.  指定控件是否透明:

使BackStyle 属性可以指定控件是否透明。
True 、False
 

22.  解除子窗体锁定:

Me.进_子窗体.Locked = False   '解除子窗体锁定
注:将窗体上所有控件的输入法关掉!
Private Sub Form_Open(Cancel As Integer)
Dim ctl As Access.Control
For Each ctl In Me.Controls
Debug.Print ctl.Name & ctl.ControlType
If ctl.ControlType = acTextBox Then
ctl.IMEMode = 2
End If
Next
End Sub 
上述代码控制文本框,你还可以控制其他的,只要copy进窗体就可以了
 

23.  列表框的值的引用:

如果是单选的列表框,用 me.[列表框名] 来引用;如果要引用不是结合型列的值,可以用 me.[列表框名].column(n) (第一列n=0,第二列n=1…)
引用多列组合框或列表框中特定的列或列与行的组合
用 0 引用第一列,用 1 引用第二列,依此类推。用 0 引用第一行,用 1 引用第二行,依此类推。例如在含有一列客户 ID 和一列客户名称的列表框中,可以使用如下方式引用第二列、第五行的客户名称:
Forms!Contacts!Customers.Column(1, 4)
可以使用 Column 属性将组合框或列表框的内容指定给另一控件,如文本框。例如,若要将文本框的 ControlSource 属性设为列表框第二列中的值,可以使用以下表达式:
=Forms!Customers!CompanyName.Column(1)
如果引用了组合框或列表框中的列,但用户未做选择,则 Column 属性设置将为 Null。可以使用 IsNull 函数来确定是否进行了选择,示例如下:
If IsNull(Forms!Customers!Country)
    Then MsgBox "No selection."
End If
 

24.  显示获得焦点的控件的 Name:

    ctl As Control
    Set ctl = Screen.ActiveControl
    MsgBox ctl.Name
Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,