以下是小编帮大家整理的Excel中老式工具栏的限制,本文共3篇,仅供参考,希望能够帮助到大家。本文原稿由网友“pegge70”提供。
篇1:Excel中老式工具栏的限制
如果想在Excel 2007中创建一个工具栏,应注意下面的一些限制:
(1)不能够自由浮动
(2)总是显示在加载项选项卡自定义工具栏组中
(3)Excel会忽略一些CommandBar的属性和方法
创建工具栏的代码
这里的代码假定有一个带有两个名为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 CommandBar
Dim Btn As CommandBarButton
'如果存在则删除已存在的工具栏
On Error Resume Next
CommandBars(TOOLBARNAME).Delete
On Error GoTo 0
'创建工具栏
Set TBar = CommandBars.Add
With TBar
.Name = TOOLBARNAME
.Visible = True
End With
'添加按钮
Set Btn = TBar.Controls.Add(Type:=msoControlButton)
With Btn
.FaceId = 300
.
.Caption = “这里是Macro1的提示”
End With
'添加另一个按钮
Set Btn = TBar.Controls.Add(Type:=msoControlButton)
With Btn
.FaceId = 25
.
.Caption = “这里是Macro2的提示”
End With
End Sub
图1显示了带有这两个按钮的工具栏,
点击阅读更多学院相关文章>>
分享到 代码中使用了一个模块级的常量TOOLBARNAME,用来存储工具栏的名称,并用于这两个过程中。
如果已存在具有相同名字的工具栏,则该过程先删除该工具栏。这样将会避免企图创建与已存在的工具栏有相同名称的工具栏时,产生错误。
通过使用CommandBars对象的Add方法来创建该工具栏,使用Controls对象的Add方法来添加两个按钮,每个按钮都有三个属性:
FaceID:确定显示在按钮中的图像的数字。
OnAction:在单击按钮时执行的宏。
Caption:鼠标指针悬浮在按钮上时显示的屏幕提示。
技巧:不仅可以设置FaceID属性,还可以设置Picture属性,使用任何的imageMso图像。例如,下面的语句晶粒示一个绿色的勾号:
PLAIN TEXT
Visual Basic:
.Picture = Application.CommandBars.GetImageMso _
(“AcceptInvitation”, 16, 16)
关于imageMso图像的更多信息,请参见“定制RibbonX”。
在关闭工作簿时,触发Workbook_BeforeClose事件过程,调用过程DeleteToolbar:
Sub DeleteToolbar()
On Error Resume Next
CommandBars(TOOLBARNAME).Delete
On Error GoTo 0
End Sub
上一页 1 2
点击阅读更多学院相关文章>>
分享到
篇2:Excel教程:对中老式工具栏的限制
如果想在Excel 2007中创建一个工具栏,应注意下面的一些限制:
(1)不能够自由浮动;
(2)总是显示在加载项选项卡自定义工具栏组中;
(3)Excel会忽略一些CommandBar的属性和方法;
创建工具栏的代码:
这里的代码假定有一个带有两个名为Macro1和Macro2宏的工作簿,并且在该工作簿打开时创建这个工具栏,在关闭该工作簿时删除这个工具栏,
注意,与Ribbon定制不同,不管当前是哪个工作簿,自定义工具栏者是可见的。
在ThisWorkbook代码模块中,输入下面的过程。第一个过程为在打开工作簿时调用创建工具栏的过程,第二个过程为在关闭工作簿时调用删除工具栏的过程。
PrivateSubWorkbook_Open()
CallCreateToolbar
EndSubPrivate
SubWorkbook_BeforeClose(CancelAsBoolean)
CallDeleteToolbar
EndSub过程CreateToolbar的代码如下:
ConstTOOLBARNAMEAsString=我的工具栏
SubCreateToolbar()
DimTBarAsCommandBar
DimBtnAsCommandBarButton
'如果存在则删除已存在的工具栏
OnErrorResumeNext
CommandBars(TOOLBARNAME).Delete
OnErrorGoTo0
'创建工具栏
SetTBar=CommandBars.Add
WithTBar
.Name=TOOLBARNAME
.Visible=True
EndWith
'添加按钮
SetBtn=TBar.Controls.Add(Type:=msoControlButton)
WithBtn
.FaceId=300
.
.Caption=这里是Macro1的提示
EndWith
'添加另一个按钮
SetBtn=TBar.Controls.Add(Type:=msoControlButton)
WithBtn
.FaceId=25
.
.Caption=这里是Macro2的提示
EndWith
EndSub
代码中使用了一个模块级的常量TOOLBARNAME,用来存储工具栏的名称,并用于这两个过程中,
如果已存在具有相同名字的工具栏,则该过程先删除该工具栏。这样将会避免企图创建与已存在的工具栏有相同名称的工具栏时,产生错误。
通过使用CommandBars对象的Add方法来创建该工具栏,使用Controls对象的Add方法来添加两个按钮,每个按钮都有三个属性:
FaceID:确定显示在按钮中的图像的数字。
OnAction:在单击按钮时执行的宏。
Caption:鼠标指针悬浮在按钮上时显示的屏幕提示。
技巧:不仅可以设置FaceID属性,还可以设置Picture属性,使用任何的imageMso图像。例如,下面的语句晶粒示一个绿色的勾号: PLAINTEXT
VisualBasic:
.Picture=Application.CommandBars.GetImageMso_
(AcceptInvitation,16,16) 关于imageMso图像的更多信息,请参见定制RibbonX。
在关闭工作簿时,触发Workbook_BeforeClose事件过程,调用过程DeleteToolbar: SubDeleteToolbar()
OnErrorResumeNext
CommandBars(TOOLBARNAME).Delete
OnErrorGoTo0
EndSub
篇3:在Excel 中实现老式工具栏
Excel2007中老式工具栏的限制
如果想在Excel 2007中创建一个工具栏,应注意下面的一些限制:
不能够自由浮动
总是显示在加载项选项卡自定义工具栏组中
Excel会忽略一些CommandBar的属性和方法
创建工具栏的代码
这里的代码假定有一个带有两个名为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 CommandBar
Dim Btn As CommandBarButton>
'如果存在则删除已存在的工具栏
On Error Resume Next
CommandBars(TOOLBARNAME).Delete
On Error GoTo 0>
'创建工具栏
Set TBar = CommandBars.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
>图1显示了带有这两个按钮的工具栏,
1:一个老式工具栏,位于加载项选项卡的自定义工具栏中
代码中使用了一个模块级的常量TOOLBARNAME,用来存储工具栏的名称,并用于这两个过程中。
如果已存在具有相同名字的工具栏,则该过程先删除该工具栏。这样将会避免企图创建与已存在的工具栏有相同名称的工具栏时,产生错误。
通过使用CommandBars对象的Add方法来创建该工具栏,使用Controls对象的Add方法来添加两个按钮,每个按钮都有三个属性:
FaceID:确定显示在按钮中的图像的数字。
OnAction:在单击按钮时执行的宏。
Caption:鼠标指针悬浮在按钮上时显示的屏幕提示。
技巧:不仅可以设置FaceID属性,还可以设置Picture属性,使用任何的imageMso图像。例如,下面的语句晶粒示一个绿色的勾号:
PLAIN TEXT
Visual Basic:
.Picture = Application.CommandBars.GetImageMso _
(“AcceptInvitation”, 16, 16)
>关于imageMso图像的更多信息,请参见“定制RibbonX”。
在关闭工作簿时,触发Workbook_BeforeClose事件过程,调用过程DeleteToolbar:
Sub DeleteToolbar()
On Error Resume Next
CommandBars(TOOLBARNAME).Delete
On Error GoTo 0
End Sub>
- 竞业限制协议书2024-06-21
- 员工竞业限制协议书2023-02-03
- 公司竞业限制协议书2024-12-30
- 关于限制燃放烟花爆竹的通告2025-08-27
- 将超链接分给工具栏按钮或菜单命令2023-07-28
- 如何手工突破网吧的种种限制2022-12-21
- 如何突破以太网络连接距离限制2023-04-15
- 局域网的限制技术和反限制技巧2024-10-30
- 快速处理协议书有时间限制吗2025-06-17
- 高考阅卷人谈作文的限制与自由2023-01-27