WEB开发网      濠电娀娼ч崐濠氬疾椤愶附鍋熸い鏍ㄧ〒闂勫嫰鏌﹀Ο渚Ц闁诲氦顕ч湁婵犲﹤楠告禍鍓х磼鏉堛劌绗氶柟宄版嚇閹晠宕归銈嗘濠电偞鍨堕幐鎾磻閹捐秮褰掓偐閻戞﹩妫勯梺鎼炲妼鐎涒晝绮嬪澶樻晝闁挎繂鏌婇敃鍌涚厵閻庢稒锚閻忥絾绻濇繝鍐ㄧ伌闁诡垰鍟村畷鐔碱敂閸♀晙绱樺┑鐐差嚟婵儳螞閸曨剚鍙忛柍鍝勬噹缁€澶嬬箾閹存繄锛嶆鐐灲閹綊宕惰濡插鏌涢妸銉ヮ劉缂佸倸绉归弫鎾绘晸閿燂拷 ---闂備焦瀵уú鈺呭箯閿燂拷
开发学院软件教学办公软件Excel Excel 2007教程:对中老式工具栏的限制 阅读

Excel 2007教程:对中老式工具栏的限制

 2009-02-27 14:31:59 来源:WEB开发网 闂備線娼уΛ鎾箯閿燂拷闂備礁鎲¢崹鐢垫崲閹扮増鍎嶆い鎺戝€甸崑鎾斥槈濞嗗秳娌紓鍌氱▌閹凤拷濠电姭鎷冮崨顓濈捕闂侀潧娲ゅú銊╁焵椤掍胶鈯曢柕鍥╁仧缁辩偤鏁撻敓锟�闂備線娼уΛ鎾箯閿燂拷  闂備胶枪缁绘鈻嶉弴銏犳瀬闁绘劕鎼痪褔鏌曟繝蹇曠窗闁煎壊浜滈—鍐偓锝庡墮娴犙勭箾閸喎鐏ユい鏇樺劦椤㈡瑩鎮℃惔銇帮拷
核心提示:如果想在Excel 2007中创建一个工具栏,应注意下面的一些限制:(1)不能够自由浮动;(2)总是显示在加载项选项卡自定义工具栏组中;(3)Excel会忽略一些CommandBar的属性和方法;创建工具栏的代码:这里的代码假定有一个带有两个名为Macro1和Macro2宏的工作簿,Excel 2007教程:对中老式工

如果想在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


  代码中使用了一个模块级的常量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

Tags:Excel 教程 老式

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接