遍历控件的方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
技巧119 遍历控件的方法
如果窗体或工作表中的控件很多,在写代码时,如果是相同的代码,可以使用循环语句遍历控件,码量。
119-1 使用名称中的变量遍历控件
如果控件使用系统缺省名称,如“TextBox1”、“TextBox2”,前面是固定的字符串,后面是序号的件。
对于窗体中的控件,如下面的代码所示。
1.#001 Private Sub CommandButton1_Click()
2.#002 Dim i As Integer
3.#003 For i = 1 To 3
4.#004 Me.Controls("TextBox" & i) = ""
5.#005 Next
6.#006 End Sub
复制代码
代码解析:
窗体按钮的单击事件,一次性清空窗体中三个文本框的内容。
第4行代码,将窗体中三个文本框名称中的最后一个序号设成变量,在文本框中循环并清空其内容
对于工作表中的控件,如下面的代码所示。
1.#001 Private Sub CommandButton1_Click()
2.#002 Dim i As Integer
3.#003 For i = 1 To 4
4.#004 Me.OLEObjects("TextBox" & i).Object.Text = ""
5.#005 Next
6.#006 End Sub
复制代码
代码解析:
工作表中按钮的单击事件,在工作表中的三个文本框中循环,清空文本框的内容。
第4行代码,将工作表中四个文本框名称中的最后一个序号设成变量,使用OLEObjects方法在工作
OLEObjects方法返回图表或工作表上单个OLE对象(OLEObject)或所有OLE对象的集合(OLEObj expression.OLEObjects(Index)
参数expression是必需的,返回一个Chart 对象或Worksheet 对象。
参数Index 是可选的,OLE对象的名称或编号。
注意控件的名称是指控件在属性窗口中的名称,如图所示。如果控件的名称没有规律不适用此方
八字算命
yuanzhuping
• 19144财富
• 209鲜花
• 22技术
•等级16离任版主
积分排行
79
帖子
7838精华
4
微积分
串个门
加好友
打招呼
发消息
yuanzhuping
• 19144财富• 209鲜花
697楼
发表于 2009-4-13 16:04:45 |只看该作者|(楼主)
第8部分控件与用户窗体
技巧119 遍历控件的方法
119-3 使用程序标识符遍历控件
工作表中的ActiveX控件还可以根据控件的程序标识符找到相应的控件
1.#001 Private Sub CommandButton1_Click()
2.#002 Dim Obj As OLEObject
• 22技术
•等级16离任版主
积分排行
79
帖子
7838
精华
4
微积分
串个门
加好友
打招呼
发消息
3.#003 For Each Obj In Me.OLEObjects
4.#004 If Obj.progID = "Forms.TextBox.1" Then
5.#005 Obj.Object.Text = ""
6.#006 End If
7.#007 Next
8.#008 End Sub
复制代码
代码解析:
工作表中按钮的单击事件,遍历工作表中的所有控件并把工作表中所有
第2行代码,声明变量类型。
第3行代码,使用For Each...Next 语句遍历工作表中的所有控件。
第4行代码,使用控件的ProgId 属性返回控件的程序标识符。
ProgId 属性返回控件的程序标识符,语法如下:
expression.ProgId
参数expression是必需的,一个有效的对象。
ActiveX 控件的程序标识符如表格所示。
文本框控件返回的程序标识符是“Forms.TextBox.1”,此返回值并不受出全部文本框控件。
八字算命
举报
yuanzhuping
• 19144财富
• 209鲜花
• 22技术
•等级16离任版主
积分排行
79
帖子
7838
精华
4
微积分
串个门
加好友
打招呼
发消息
698楼
发表于 2009-4-13 16:06:01 |只看该作者|(楼主)
第8部分控件与用户窗体
技巧119 遍历控件的方法
119-4 使用名称中的变量遍历图形
如果工作表中有多个图形,可以根据名称的序号使用For...Next 语句
1.#001 Private Sub CommandButton1_Click()
2.#002 Dim i As Integer
3.#003 For i = 1 To 3
4.#004 Me.Shapes("文本框 " & i).TextFrame.Characters.Text =
5.#005 Next
6.#006 End Sub
复制代码
代码解析:
工作表中按钮的单击事件,在工作表中的三个图形文本框中依次写入“
第3行到第5行代码,使用Shapes属性在工作表上的三个图形文本框
Shapes属性返回Shapes对象,代表工作表或图形工作表上的所有图形单个的Shape对象。
返回单个的Shape对象后使用Characters 方法向图形文本框中添加字expression.Characters(Start, Length)
参数expression是必需的,返回一个指定文本框内Characters对象的
参数Start是可选的,表示将要返回的第一个字符。如果此参数设置为字符区域。
参数Length是可选的,表示要返回的字符个数。如果此参数被忽略,八字算命
举报
yuanzhuping • 19144财富
699楼
发表于 2009-4-13 16:07:55 |只看该作者|(楼主)
第8部分控件与用户窗体
技巧119 遍历控件的方法
119-5 使用FormControlType属性遍历图形
如果工作表中的是窗体控件,可以使用For Each...Next语句遍历工作面的代码所示。