Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 20095|回复: 27

vba编辑器的自定义工具栏的保存

  [复制链接]
发表于 2011-1-10 19:59 | 显示全部楼层 |阅读模式
10学分
vba编辑器菜单右击——自定义——新建
就可以新建一个自己设置的工具栏,这样很方便

问题出在于我的系统恢复以后,该自己定义的工具栏就没有了,请教任何保存该自定义工具栏

如果是excel表里的自定义工具栏,就会自动保存,因为生成了一个工具栏的表在其他位置,这样操作系统无论怎么恢复原来自己定义的工具栏都可以找到,甚至还可以保存到表格里面,所以希望vba自己定义的工具栏也可以保存,在系统恢复后自己定义的该工具栏还是在的

发表于 2011-1-10 20:14 | 显示全部楼层
将自定义工具栏附加到特定的工作簿

如果你建立了一个自定义工具栏并希望和其他人一起分享的话,你可以将它“附加”到一个工作簿中。
单击“工具→自定义→工具栏”,选择你的自定义工具栏,单击“附加”按钮(),出现“附加工具栏”对话框,单击“复制”按钮,即可将工具栏添加到一个工作簿中。
最好记得保存一下当前工作簿。

点评

我说的是vba编辑器的自定义工具栏,不是老师这里说的工作簿里面的工具栏了  发表于 2011-1-10 20:16
回复

使用道具 举报

 楼主| 发表于 2011-1-10 20:16 | 显示全部楼层
hhzjxss 发表于 2011-1-10 20:14
将自定义工具栏附加到特定的工作簿

如果你建立了一个自定义工具栏并希望和其他人一起分享的话,你可以将 ...

我说的是vba编辑器的自定义工具栏,不是老师这里说的工作簿里面的工具栏了

所以问题没有解决了,希望大家帮忙看看
回复

使用道具 举报

发表于 2011-1-10 20:38 | 显示全部楼层
下载的,你看看吧!

右键菜单VBETool--chijanzen.rar (18.51 KB, 下载次数: 40)

点评

点击了文件,没有看见有什么反应和区别,不懂怎么用或是什么意思  发表于 2011-1-10 20:52
回复

使用道具 举报

发表于 2011-1-10 20:41 | 显示全部楼层
自定义工具栏是保存在模板中的,系统恢复后模板没了,自定义工具栏就没了。
有一个办法就是用VBA来创建工具栏,保存为加载宏后引用。
回复

使用道具 举报

 楼主| 发表于 2011-1-10 20:49 | 显示全部楼层
阿童木 发表于 2011-1-10 20:41
自定义工具栏是保存在模板中的,系统恢复后模板没了,自定义工具栏就没了。
有一个办法就是用VBA来创建工具 ...

老师注意哦,我说的是vba编辑器里面的自定义工具栏哦,不是问的是工作簿里面的工具栏,工作簿里面的工具栏自定义的系统恢复后是存在的,就算没有保存在工作簿里面也存在。

那老师指教下怎么用vba来建立这个自定义工具栏呢??在添加各工具时,我怎么知道各工具的名称(vba里面写的名称)是什么呢??
各工具如图:
未命名.JPG
未命名.JPG
回复

使用道具 举报

发表于 2011-1-10 21:05 | 显示全部楼层
xdwy81129 发表于 2011-1-10 20:49
老师注意哦,我说的是vba编辑器里面的自定义工具栏哦,不是问的是工作簿里面的工具栏,工作簿里面的工具栏 ...

VBE里面的工具栏是一样存放在模板中的。

创建VBE工具栏有点麻烦,得用类模块

参考以下:

Q:如何为VBE自定义菜单按钮添加动作?
A:在VBE中,也可以通过代码添加菜单按钮,但是点击按钮时的动作(触发的宏),却不能简单地通过OnAction属性来设置。需要通过类模块的Click事件来设置。请参考以下代码。模块中添加工具栏按钮:

  1. Dim oBtns As New Collection
  2. Sub 添加动作()
  3.     Dim cmdTest As CommandBar
  4.     Dim clsTest As MyCls
  5.     Set oBtns = Nothing
  6.     Set cmdTest = Application.VBE.CommandBars.Add("TestBar")
  7.     cmdTest.Visible = True
  8.     Set clsTest = New MyCls
  9.     Set clsTest.Btn = cmdTest.Controls.Add(msoControlButton)
  10.     With clsTest.Btn
  11.        .Style = msoButtonIconAndWrapCaption
  12.        .Caption = "Test"
  13.     End With
  14.     oBtns.Add clsTest
  15. End Sub
复制代码
添加一个类模块MyCls,添加以下代码(表示点击后运行模块中的Test过程):
  1. Public WithEvents Btn As CommandBarButton
  2. Private Sub Btn_click(ByVal ctrl As Office.CommandBarButton, CancelDefault As Boolean)
  3.    Application.Run "Test"
  4. End Sub
复制代码

编写VBE菜单的动作.rar (15.05 KB, 下载次数: 27)
回复

使用道具 举报

 楼主| 发表于 2011-1-10 21:11 | 显示全部楼层
阿童木 发表于 2011-1-10 21:05
VBE里面的工具栏是一样存放在模板中的。

创建VBE工具栏有点麻烦,得用类模块

啊,感觉有点没有理解,想看附件来帮助理解,可是好像是2007或2010的,我2003的打不开

:(
回复

使用道具 举报

发表于 2011-1-10 21:15 | 显示全部楼层
xdwy81129 发表于 2011-1-10 21:11
啊,感觉有点没有理解,想看附件来帮助理解,可是好像是2007或2010的,我2003的打不开

:(

改成03版的了
编写VBE菜单的动作.rar (7.31 KB, 下载次数: 16)
回复

使用道具 举报

发表于 2011-1-10 21:15 | 显示全部楼层
G:\Documents and Settings\User\Application Data\Microsoft\Excel\Excel11.xlb

点评

说的不是工作簿的自定义工具栏了,是vba编辑器里面的工具栏了。 谢谢关注  发表于 2011-1-10 21:19
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-6 18:18 , Processed in 0.341559 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表