ssl9000调音台:使用 Visual Basic 编辑器管理宏

来源:百度文库 编辑:中财网 时间:2024/05/07 23:41:55

使用 Visual Basic 编辑器管理宏

打印

作者:Paul Cornell

在本月的专栏中,我将您介如何最充分地利用 Visual Basic? 编辑个工具来管理宏。


查看所有高级用户专栏
查看所有专栏


如果您已经阅读了上一期的高级用户专栏使用宏提高工作效率,您应该知道如何创建和录制自己的 Microsoft Office 宏。正如上一专栏中所讲,宏是用来自动重复执行 Office 任务的代码组件。

什么是 Visual Basic 编辑器?

大多数的 Office 程序都包含 Visual Basic 编辑器,它是用来创建、修改和管理 Office 宏的一种环境。宏中包含的代码通常以关键字 Sub 开头并以关键字 End Sub 结尾。(此代码也就是所谓的“子例程”。))“模块”是由一个或多个宏或子例程组成的,“工程”则是由一个或多个模块组成。

一个工程可以包含一个或多个模块。
一个模块可以包含一个或多个宏或子例程。

Visual Basic 编辑器用于管理工程及其关联的模块。要访问 Visual Basic 编辑器,请在“工具”菜单中指向“宏”,然后单击“Visual Basic 编辑器”。

试一下!

让我们先创建一个简单的宏,然后再使用 Visual Basic 编辑器对宏进行修改。我们要创建的宏将根据指定的颜色值更改 Microsoft Word 文档的背景颜色。创建并运行宏的步骤如下:

  1. 启动 Microsoft Word。
  2. 创建新的空白文档。
  3. 在“工具”菜单上,指向“宏”,然后单击“宏”。
  4. 在“宏的位置”框中,单击“Normal.dot(共用模板)”。
  5. 在“宏名”框中,键入“ChangeColor”,然后单击“创建”。Visual Basic 编辑器中将显示以下代码:

    Sub ChangeColor()
    '
    ' ChangeColor Macro
    ' 宏在 {日期} 由 {姓名} 创建
    '

    End Sub
  6. 下一步,按照以下所示编辑该代码:

    Sub ChangeColor()
    '
    ' ChangeColor Macro
    ' 宏在 {日期} 由 {姓名} 创建
    '

    Dim intRed As Integer
    Dim intGreen As Integer
    Dim intBlue As Integer

    intRed = InputBox("Red value? (0-255)")
    intGreen = InputBox("Green value? (0-255)")
    intBlue = InputBox("Blue value? (0-255)")

    ActiveWindow.View = wdWebView

    With ActiveDocument.Background.Fill

    .Visible = msoTrue
    .ForeColor.RGB = RGB(intRed, intGreen, intBlue)

    End With

    MsgBox "该文档的背景现在是 RGB(" & _
    intRed & ", " & intGreen & ", " & intBlue & ")."

    End Sub
  7. 在“视图”菜单上,单击“Microsoft Word”。
  8. 在该文档中键入一些文本,您可以看到文档背景和文本之间的对比。
  9. 在 Word 中的“工具”菜单上,指向“宏”,然后单击“宏”。
  10. 单击“ChangeColor”,然后单击“运行”。
    注意:    如果屏幕上显示消息,声明该工程中的宏已被禁用,请执行以下一或两个操作:
    • 参考 Microsoft 产品支持服务文章 WD2002:"The Macros in the Project Are Disabled" Message When You Run a Macro (Q290949),确保宏能够正常运行。
    • 参考帮助文章 Changing Macro Security Settings in Office XP。
  11. 在显示的对话框中输入三个介于 0 和 255 之间的整数(红色、绿色和蓝色各一个值),每次输入后都要单击“确定”。

文档的背景颜色将会改变,以匹配上一步骤中设定的红绿蓝 (RGB) 组合值。

现在,我们使用 Visual Basic 编辑器来修改宏:即根据指定的颜色值更改 Word 文档中所有文本的背景颜色。请执行以下步骤:

  1. 在“工具”菜单上,指向“宏”,然后单击“Visual Basic 编辑器”。
  2. 在“工程”窗口中,如果“Normal”文件夹未展开,请将其展开。
    注意:    如果没有看到“工程资源管理器”窗口,请在“视图”菜单中单击“工程资源管理器”。
  3. 在展开的“Normal”文件夹中,如果“模块”文件夹尚未展开,请将其展开。
  4. 双击“NewMacros”。
  5. 找到上一过程中编写的“ChangeColor”宏代码。
    注意:    如果找不到 “ChangeColor”宏,请尝试在“代码”窗口右上边的“过程”下拉列表中单击“ChangeColor”。
  6. 然后,按照以下所示编辑代码(对以前代码的更改以粗体突出显示):

    Sub ChangeColor()
    '
    ' ChangeColor Macro
    ' 宏在 {日期} 由 {姓名} 创建
    '

    Dim intRed As Integer
    Dim intGreen As Integer
    Dim intBlue As Integer

    intRed = InputBox("Red value? (0-255)")
    intGreen = InputBox("Green value? (0-255)")
    intBlue = InputBox("Blue value? (0-255)")

    ActiveWindow.View = wdWebView

    With ActiveDocument

    .Select
    .Range.Font.Color = RGB(intRed, intGreen, intBlue)

    End With

    MsgBox "该文档的背景现在是 RGB(" & _
    intRed & ", " & intGreen & ", " & intBlue & ")."

    End Sub
  7. 在“ChangeColor”宏内,在 SubEnd Sub 关键字之间的任意位置单击。
  8. 在“运行”菜单中,单击“运行子过程/用户窗体”。
  9. 在显示的对话框中,为红色、绿色和蓝色值各输入一个介于 0 到 255 之间的整数,然后在显示的红绿蓝三个输入框中分别单击“确定”。

文档的文本颜色将会改变,以匹配上一步骤中设定的红绿蓝 (RGB) 组合值。

管理模块和工程

在 Visual Basic 编辑器中,用来处理模块和工程的主要代码管理工具称为“工程资源管理器”。打开 Visual Basic 编辑器时通常可以看到“工程”窗口。如果看不到“工程资源管理器”窗口,请在 Visual Basic 编辑器的“视图”菜单中单击“工程资源管理器”,即可显示该窗口。

“工程”窗口中显示已存储的、与活动 Office 程序和/或 Office 文档关联的所有宏代码的内容。下表列出了主要 Office 程序中可用的宏代码存储位置。

程序 可用的宏代码存储位置 Microsoft Access 2002 仅在创建该代码的数据库中。 Microsoft Excel 2002 仅在创建该代码的工作簿中。 Microsoft FrontPage? 2002 仅在 FrontPage 应用程序中(在本地计算机上一个名为 FrontPage.fpm 的文件中)。不能将宏代码存储在某个特定的 FrontPage Web 页面或单个 Web 页面内。 Microsoft Outlook? 2002 仅在 Outlook 应用程序中(在本地计算机上一个名为 VbaProject.otm 的文件中)。不能将宏代码存储在单个 Outlook 项目中。 Microsoft PowerPoint? 2002 仅在创建该代码的演示文稿中。 Microsoft Word 2002 在 Normal.dot 模板、其他可用的 Word 模板或活动文档中。

与其他用户共享宏

当您向其他用户分发包含宏的数据库、工作表、演示文稿和文档时,它们可以立即运行附带的宏。您还可以将包含宏的单个模块与 Office 文档和工程分开来,单独分发给其他 Office 用户。

要将单个模块与 Office 文档和工程分开进行分发,请执行以下步骤:

  1. 在“工程”窗口中,右键单击包含宏的模块。
  2. 单击“导出文件”,然后按照说明将导出的代码保存到单独的文件中。

但是请注意,此文件中的代码不能自行运行,必须将它导入现有的 Office 文档或工程中(取决于 Office 程序)才能运行。

导入代码文件的步骤:

  1. 在 Visual Basic 编辑器的“文件”菜单中,单击“导入文件”。
  2. 按照说明将该文件的代码放入您的文档或工程中。

下期预告

现在,我们已经充分了解了有关使用宏的基本信息,为以后的学习做好了准备。下次我们将讨论如何共享宏,帮助我们提高工作效率。下次,我们将练习使用 Visual Basic 编辑器、Visual Basic 编辑器的菜单命令以及快捷键组合,帮助我们管理宏。

请继续发送电子邮件!

我期待着通过 pwruser@microsoft.com 收到您的邮件。我真心希望本专栏能够成为您的专栏,所以,请将您的意见或建议以及您创建的最好的 Office 解决方案发送给我。记住,我无法做到将收到的每一个 Office 解决方案都刊登出来,我也没有时间回复您的每一封电子邮件,我不是技术支持代表。但我可能在以后的某一期专栏中推介您的解决方案。