2024年3月22日发(作者:)

Excel VBA编程 使用用户窗体显示帮助信息

通过在工作表中使用帮助,使用用户可以方便的浏览工作表,并获取有用的信息外。帮助信

息还主要应用在用户窗体中,向用户窗体提供帮助信息也分为多种,下面就来介绍制作用户

窗体帮助信息的方法。

1.使用标签控件显示帮助文本

标签除了用于提供控件的标题之外,还用于写实际的文本。例如,在用户窗体中的两个标签

控件,用于显示在某个工作表中的A列(帮助标题)和B列(帮助文本)。单击数值调节钮

控件,允许用户在不同的主题之间切换。如图21-3所示。

图21-3 标签帮助

其实现代码如下:

'数值调节钮

Private Sub SpinButton1_Change()

flag =

n = Sheets("HELPSheet").Cells(flag, 1).Value

n = Sheets("HELPSheet").Cells(flag, 2).Value

'窗体标题显示

n = "每日提示 (" & flag & " to " & & ") "

End Sub

提 示

这里变量flag是一个全局的数值类型的变量,它包含了当前第几条的提示信息。

2.使用滚动标签显示帮助文本

这种方法在单个标签控件中显示帮助文本。因为标签控件不能包含垂直的滚动条,所以要把

这个标签放在一个框架控件中,因为框架控件中可以包含滚动条,设置框架控件ScrollBars

属性即可。

例如,在初始化用户窗体时,从工作表HelpLBSheet中读取标签中要显示的文本,将内容以

滚动的方式显示到用户窗体中。如图21-4所示。

图21-4 滚动标签帮助

在窗体的Initialize事件中,输入如下代码:

Private Sub UserForm_Initialize()

'获取要显示的内容的最大行数

flag = Sheets("HelpLbSheet").Range("A100").End(xlUp).Row

'取值

For r = 1 To flag

txt = txt & Sheets("HelpLbSheet").Cells(r, 1).Text & vbCrLf & vbCrLf

Next

'设置显示样式

With Label1

.Top = 0

.Caption = txt

.Width = 160

.AutoSize = True

End With

Height =

End Sub

3.使用列表控件选择帮助主题

使用列表框控件选择帮助主题,是滚动标签显示帮助的基础上完成的,当列表框中选择了帮

助的标题后,在下面的滚动标签中显示帮助的内容。

例如,在用户窗体中,添加并设置好控件的属性后,再输入读取工作表HelpSheet中A

列和B列的信息的代码。运行后窗体界面如图21-5所示。

图21-5 列表选择帮助

用户窗体初始化后,窗体中显示工作表中的第一条信息。代码如下

Private Sub UserForm_Initialize()

flag = Sheets("HelpSheet").Range("A100").End(xlUp).Row

'初始化复合框

For r = 1 To flag

m Sheets("HelpSheet").Cells(r, 1)

Next

dex = 0 '显示复合框中的第一行

With Label1

.Top = 0

.Caption = Sheets("HelpSheet").Cells(1, 2)

.Width = 210

.AutoSize = True

End With

Height =

listId = 0

End Sub

提 示

当用户从复合框中选择其它的标题时,下面的滚动标签中将信息该标题对应的信息,可在复

合框的Change事件中输入代码。

Private Sub ComboBox1_Change()

listId = dex

= 210

n = Sheets("HelpSheet").Cells(listId + 1, 2)

End Sub

同样,用户窗体的导航按钮,可用于显示上一条或下一条的帮助信息。单击后,帮助标题和

信息同时改变。

'上一条

Private Sub CommandButton1_Click()

If listId <> 0 Then dex = listId - 1

End Sub

'下一条

Private Sub CommandButton2_Click()

If listId <> flag - 1 Then dex = listId + 1

End Sub

代码中变量ListId是一个全局变量,用于记录当前复合框的第几项。