三九宝宝网宝宝百科宝宝知识

在Excel2007中实现老式工具栏

11月18日 编辑 39baobao.com

[WPS2000中实现立体字效果]在日常的办公中,很多朋友都希望自己的文章排得漂亮一些,可以用字体字形的变化表达出自己的心情,这里就需要对文字进行一些简单的变形,考试大提示如制作立体字效果。要对文字进...+阅读

Excel2007中老式工具栏的限制

如果想在Excel 2007中创建一个工具栏,应注意下面的一些限制:

不能够自由浮动

总是显示在加载项选项卡自定义工具栏组中

Excel会忽略一些mandBar的属性和方法

创建工具栏的代码

这里的代码假定有一个带有两个名为Macro1和Macro2宏的工作簿,并且在该工作簿打开时创建这个工具栏,在关闭该工作簿时删除这个工具栏。

注意,与Ribbon定制不同,不管当前是哪个工作簿,自定义工具栏者是可见的。

在ThisWorkbook代码模块中,输入下面的过程。第一个过程为在打开工作簿时调用创建工具栏的过程,第二个过程为在关闭工作簿时调用删除工具栏的过程。

Private Sub Workbook_Open()

Call CreateToolbar

End SubPrivate

Sub Workbook_BeforeClose(Cancel As Boolean)

Call DeleteToolbar

End Sub 过程CreateToolbar的代码如下:

Const TOOLBARNAME As String = "我的工具栏"

Sub CreateToolbar()

Dim TBar As mandBar

Dim Btn As mandBarButton

'如果存在则删除已存在的工具栏

On Error Resume Next

mandBars(TOOLBARNAME).Delete

On Error GoTo 0

'创建工具栏

Set TBar = mandBars.Add

With TBar

.Name = TOOLBARNAME

.Visible = True

End With

'添加按钮

Set Btn = TBar.Controls.Add(Type:=msoControlButton)

With Btn

.FaceId = 300

.OnAction = "Macro1"

.Caption = "这里是Macro1的提示"

End With

'添加另一个按钮

Set Btn = TBar.Controls.Add(Type:=msoControlButton)

With Btn

.FaceId = 25

.OnAction = "Macro2"

.Caption = "这里是Macro2的提示"

End With

End Sub

代码中使用了一个模块级的常量TOOLBARNAME,用来存储工具栏的名称,并用于这两个过程中。

如果已存在具有相同名字的工具栏,则该过程先删除该工具栏。这样将会避免企图创建与已存在的工具栏有相同名称的工具栏时,产生错误。

通过使用mandBars对象的Add方法来创建该工具栏,使用Controls对象的Add方法来添加两个按钮,每个按钮都有三个属性:

FaceID:确定显示在按钮中的图像的数字。

OnAction:在单击按钮时执行的宏。

Caption:鼠标指针悬浮在按钮上时显示的屏幕提示。

技巧:不仅可以设置FaceID属性,还可以设置Picture属性,使用任何的imageMso图像。例如,下面的语句晶粒示一个绿色的勾号:

PLAIN TEXT

Visual Basic:

.Picture = Application.mandBars.GetImageMso _

("AcceptInvitation", 16, 16)

关于imageMso图像的更多信息,请参见“定制RibbonX”。

在关闭工作簿时,触发Workbook_BeforeClose事件过程,调用过程DeleteToolbar:

Sub DeleteToolbar()

On Error Resume Next

mandBars(TOOLBARNAME).Delete

On Error GoTo 0

End Sub

以下为关联文档:

在WPSOffice2005中实现多行合一在编辑政府公文中多行合一是经常要用到的一种格式,但不知为何在WPS 2005 政府版的金山文字中却没有提供多行合一的功能。笔者经过几番试验找到了两种解决方法.合并字符在金...

在Excel中实现中文大写数字在与朋友开发表格模板时,为做一个能在Excel中构造数字的汉字写法(中文大写)的一段VB函数花了不少时间。事后仔细想来,其实实现数字读法的方法实际上至少有三种,即VB编程法、自动...

在PowerPoint中实现表格的动态填充我比较喜欢使用PowerPoint来制作课件,一次一位化学老师让我帮他解决这样的问题:利用PowerPoint展示一张空表,然后随着实验的进展动态地填写表格。由于在PowerPoint中插入的表...

Word中实现文本与表格的相互转换将文本转换成表格 1、插入分隔符 (分隔符:将表格转换为文本时,用分隔符标识文字分隔的位置,或在将文本转换为表格时,用其标识新行或新列的起始位置。)(例如逗号或制表符),以指示...

在被忽视中实现自我突围案例一 期待突破 “我这样的中等生在学校里很没话题——在我们学校,中等生基本上都能考个二本,一本挺难的。上大学容易,要进名校却机会渺茫。我们属于被忽视的那一拨人。”卢俊...

小议城市小区环境建设中实用性和观赏性的有机统一随着人们生活水平的提高,小区建设得到飞速发展,人们对居住环境的要求也越来越高。人们厌倦了城市的喧器、拥挤,越来越渴望能回归自然、接近自然,于是借助一系列象征、融会、引入...

推荐阅读
图文推荐