VBA创建自定义工具栏并设置颜色条件格式

需积分: 10 5 下载量 22 浏览量 更新于2024-09-11 收藏 663B TXT 举报
"VBA添加工具栏的实现方法与代码示例" 在Excel VBA中,添加自定义工具栏可以极大地提升工作效率,使用户能够快速访问常用功能。通过编写VBA宏,我们可以创建并定制自己的工具栏,以满足特定的需求。在提供的代码中,主要涉及到两个方面:工作表单元格颜色的改变以及自定义工具栏的创建。 首先,让我们关注工作表单元格颜色的改变部分。这部分代码是一个事件处理程序,名为`Worksheet_SelectionChange`,它会在用户选择工作表中的任何单元格时触发。代码的核心是检查选择的单元格是否位于第二行或以下,如果是,则执行以下操作: 1. 使用`On Error Resume Next`来处理可能出现的错误,确保即使删除格式条件时出现错误,程序也不会停止。 2. 删除名为“ChangColor_With1”的格式条件,这可以通过`.FormatConditions.Delete`完成。 3. 将选定行的名称设置为“ChangColor_With1”,这可以通过`Target.EntireRow.Name`实现。 4. 添加一个新的条件格式规则,当规则条件为`TRUE`时,将选定单元格的内填充色设为颜色索引22(通常是浅黄色)。这通过`.Add xlExpression, , "TRUE"`和`.Item(1).Interior.ColorIndex = 22`完成。 这部分代码的作用是在用户选择第二行及以下的单元格时,自动改变选定行的颜色,从而帮助用户快速识别已操作过的行。 接下来,我们看自定义工具栏的创建部分。这部分代码展示了如何在工作表的菜单栏上添加一个新的按钮,代码如下: 1. `Option Explicit`语句声明变量必须在使用前显式声明,有助于防止因未声明变量而产生的错误。 2. 定义了一个名为`zyi_Bar`的VBA子程序,这个子程序将被用作按钮的点击事件处理程序。 3. 定义了几个字符串变量,用于存储按钮的命令、标题和参数。 4. 使用`CommandBars("WorksheetMenuBar").Reset`清空当前工作表菜单栏上的所有控件,以便重新添加。 5. 使用`CommandBars("WorksheetMenuBar").Controls.Add`创建一个新的按钮,`Before`参数表示新按钮的位置,`Temporary`参数设置为True,意味着该按钮只在当前会话中可见,关闭并重新打开工作簿后会消失。 6. 设置按钮的属性,如标题(Caption)、点击事件(OnAction)、样式(Style)和图标(FaceId)。 这部分代码创建了一个名为“ɫ”的按钮,并将其添加到工作表菜单栏上,点击该按钮将调用`zyi_Bar`子程序执行相应的操作。 总结来说,这段VBA代码展示了如何利用事件处理程序改变单元格颜色,并创建自定义工具栏来增强Excel的交互性和用户界面。通过理解和应用这些技巧,你可以根据自己的需求进一步定制Excel,提高工作效率。