创建上标和下标按钮(Microsoft Excel)
在Excel中编辑单元格时,您可以访问几个格式化工具栏按钮,这些按钮可以使单元格的格式化更加容易。例如,您可以使用粗体或斜体工具更改单元格中所选文本的这两个属性。在某些时候,您可能需要创建其他工具栏按钮来处理其他格式,例如应用上标或下标。
但是,Excel不允许您创建自己的格式设置工具,并且在编辑单元格时无法访问它们。这是因为在进行编辑时,Excel“停用”了所有用户定义的宏。
您剩下的是通过Format |格式化单元格内容。单元格,或通过按Ctrl + 1直接显示“设置单元格格式”对话框。
但是,可以使用一种偷偷摸摸的方法来创建自己的格式化工具。这涉及使用用户表单和VBA来创建自己的格式“对话框”。 (我知道,这实际上不是对话框,而是表单。)创建您自己的用户表单并不十分困难,但是对于宏而言,这并不是出于胆小。请按照以下步骤创建自己的表单:
。按Ctrl + F11以显示VBA编辑器。
。在VBA编辑器中,从“插入”菜单中选择“用户表单”。将显示一个新的空白用户表单以及表单工具箱。
。使用表单工具箱中的控件,在表单顶部添加三个CommandButton控件。
。更改左CommandButton控件的属性,以便其名称为btnSuper,其标题为上标。
。更改中央CommandButton控件的属性,使其名称为btnSub,其标题为下标。
。更改右侧CommandButton控件的属性,使其名称为btnNormal,其标题为Normal。
。在三个按钮下,添加一个TextBox控件。您无需更改此控件的任何属性。
。在TextBox控件下,添加第四个CommandButton控件。
。更改最后一个CommandButton控件的属性,使其名称为btnExit,其标题为Exit。
而已;您已经创建了用户表单,并准备将宏代码与刚放置的控件相关联。选择用户窗体后,按F7键显示该窗体的“代码”窗口。该窗口可能包含一两行自动生成的代码。将其替换为以下代码:
Private Sub UserForm_Activate() TextBox1.Text = ActiveCell.Formula End Sub
Private Sub btnSuper_Click() Dim intStart As Integer Dim intLength As Integer intLength = TextBox1.SelLength If intLength > 0 Then intStart = TextBox1.SelStart + 1 ActiveCell.Characters(intStart, intLength).Font.Superscript = True End If End Sub
Private Sub btnSub_Click() Dim intStart As Integer Dim intLength As Integer intLength = TextBox1.SelLength If intLength > 0 Then intStart = TextBox1.SelStart + 1 ActiveCell.Characters(intStart, intLength).Font.Subscript = True End If End Sub Private Sub btnExit_Click() Unload UserForm1 End Sub
Private Sub btnNormal_Click() Dim intStart As Integer Dim intLength As Integer intLength = TextBox1.SelLength If intLength > 0 Then intStart = TextBox1.SelStart + 1 ActiveCell.Characters(intStart, intLength).Font.Superscript = False ActiveCell.Characters(intStart, intLength).Font.Subscript = False End If End Sub
关闭用户窗体的“代码”窗口,然后关闭窗体窗口本身。现在,您需要创建一个非常短的宏,以显示实际的用户表单。该宏的创建与其他Excel宏相同,并且应如下所示:
Sub DoForm() UserForm1.Show End Sub
现在,您可以关闭“ VBA编辑器”窗口。为了使用该宏,请选择要编辑的单元格,然后运行DoForm宏。 Excel将显示您的用户窗体,其中包含所选单元格中的文本。
然后,您可以在用户表单中选择文本,并使用按钮(上标,下标和常规)更改实际单元格内容的格式。宏影响单元格的内容,而不影响用户表单的内容。因此,能够同时在屏幕上看到选定的单元格和用户表单是有帮助的。
注意:
如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(1945)适用于Microsoft Excel 97、2000、2002和2003。