扫码下载APP
及时接收最新考试资讯及
备考信息
【例】在选择某一个学生的成绩的时候,往往会发生错行的情况,而这个程序可以使您在选择某一个成绩时,自动显示该学生的所有信息。
代码如下:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If (Target.Column 1) Then
Cells(Target.Row, 1).Select
MsgBox "姓名: " & Me.Cells(Target.Row, 1) & Chr(13) _
& "语文: " & Me.Cells(Target.Row, 2) & Chr(13) _
& "数学: " & Me.Cells(Target.Row, 3) & Chr(13) _
& "英语: " & Me.Cells(Target.Row, 4) & Chr(13) _
& "物理: " & Me.Cells(Target.Row, 5) & Chr(13) _
& "化学: " & Me.Cells(Target.Row, 6) & Chr(13) _
& "地理: " & Me.Cells(Target.Row, 7) & Chr(13) _
& "历史: " & Me.Cells(Target.Row, 8) & Chr(13) _
& "生物: " & Me.Cells(Target.Row, 9) & Chr(13) _
& "体育: " & Me.Cells(Target.Row, 10) & Chr(13) _
& "总分: " & Me.Cells(Target.Row, 11) & Chr(13) _
, vbOKOnly, "提示"
End If
End Sub
程序实现后的结果:
首先,这个代码使用了一条语句,Msgbox,这条语句的作用是调用一个消息对话框,这个语句带有三个参数,各个参数之间都用逗号分隔。
其次,我们看到该语句的第一个参数就占据了好几行,那么大家可能会问,不是在上一讲中提到了VBA识别判断是否是一条语句就凭借换行符吗?那么像这样在多行中的语句为什么是属于同一条语句呢?这个主要是因为有时候语句太长,如果在一行写可能会导致格式混乱且不容易阅读和理解,所以我们就使用下划线(即:“_”)来将未写完的代码转到下一行继续写,并告诉系统,该语句在这行没有结束,下行还是属于该语句的内容。让我们仔细看看第一个参数的内容,总体上是一个字符串,该字符串由个部分构成,每个部分占据了一行,每个部分都是由工作表中的列标题字符串组成,“&”符号表示两个字符串之间的连接符,通过该符号,后面跟了一串代码,看起来也像个函数的样子(为什么说像函数呢?也为有函数名、括号和括号里的参数),对,这个是一个集合,其中的“me”表示引用本工作表,例如这里就是指Worksheet1工作表,“Cells”表示本工作表的所有单元格的集合,其中的参数表示行序号和列序号,这个在昨天的讲解中讲过。其实这里省略了一个部分,完整的应该是这样写“Me.Cells(Target.Row, 1).Value”,即这里返回的是指定单元格内的值,为啥省略呢?由于Value属性是Cells集合的默认属性,所以可以省略不写。最后,还跟了一个函数,即“Chr(13)”,这个函数的参数为一个整数值,作用是返回ASCII编码表中对应该整数值的字符或不可打印符号的。比如这里的13,在ASCII表中就对应了换行符,那么通过这个函数就返回了一个换行符,这样就可以让每个列标题的部分在对话框中占据一行的位置。
上一篇:EXCEL如何实现奇偶页打印?
下一篇:快速定位单元格实例
Copyright © 2000 - www.chinaacc.com All Rights Reserved. 北京正保会计科技有限公司 版权所有
京B2-20200959 京ICP备20012371号-7 出版物经营许可证 京公网安备 11010802044457号