我现在做有关vba的编程,需要屏蔽掉word的一些菜单和工具条的功能,请问有何方法?

shengzi101 2001-09-24 09:09:04
加精
我现在做有关vba的编程,需要屏蔽掉word的一些菜单和工具条的功能,请问有何方法?
我知道可以定义过程,并且,过程名与word的菜单和工具条内部名称一致,然后,输入自己的代码,就可以了。
我想知道除了以上方法,是否还有其他的方法?另外,对于上述方法,如何知道word
菜单和工具条的内部过程名?
请各位大侠赐教
...全文
340 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
customer 2001-12-18
  • 打赏
  • 举报
回复
GOOD!
x_tianping 2001-11-14
  • 打赏
  • 举报
回复
Public Function SetMouse(ByVal State As Integer) '自定义设置是否屏蔽鼠标右键
Dim cbar As CommandBar
Dim commname As String
On Error Resume Next
Select Case State
Case 0 '屏蔽鼠标右键
For Each cbar In CommandBars
commname = cbar.name
On Error Resume Next
CommandBars(commname).Enabled = False
Next
Case 1 '恢复鼠标右键
For Each cbar In CommandBars
commname = cbar.name
On Error Resume Next
CommandBars(commname).Enabled = True
Next
End Select
End Function
Ganzl 2001-10-30
  • 打赏
  • 举报
回复
1、进入VBA编辑器
2、“插入”-〉“类模块”
3、将下面的代码放在类模块的通用声明部分
Public WithEvents appExcel As Excel.Application
4、在VBA编辑器的选择对象下拉框中可以找到 appExcel,选中后右边就会出现application的事件过程名称
5、对你的应用来说不需要这样做
6、可以给我发邮件(ganzl@sina.com),将要求描述清楚,我给你个例子
xpg 2001-10-30
  • 打赏
  • 举报
回复
对啊,我上面的程序能够调通,而且可行,效果也不错!
但是就是不是很清楚微软的那段代码是什么意思,听你解释,我似乎懂了,可是调了一下条不通?不知道什么原因,因为我没有特别的学过vba,只稍微的翻了一下书!不是很懂!
email我已经给你发过去了(lvlifeng@netease.com),由于没看清楚你的贴子的内容,我就没有描述我的要求,但是你看了上面之后,应该知道我想干什么了吧?
jtarzan 2001-10-29
  • 打赏
  • 举报
回复
to Ganzl():

WithEvents只能在类模块中使用——这是什么意思啊?
是不是上面的代码放在类模块下可以调通?但是我调了一下还是出错
再说上面的程序,没有类的属性,方法,那象类模块啊?
xpg 2001-10-28
  • 打赏
  • 举报
回复
谢谢,茅塞顿开啊!
Ganzl 2001-10-28
  • 打赏
  • 举报
回复
WithEvents只能在类模块中使用,可以捕获对象的事件
后面是将按钮与已装的加载宏中的过程关联,在你的程序中可以直接写成:
.OnAction=公共过程名
其中的公共过程名是自己声明的Public的子程序或函数
另外如果使用新增的按钮具有Excel的内置功能与外观的话,可以直接给按钮的ID赋值
xpg 2001-10-27
  • 打赏
  • 举报
回复
to:acptdta(微软亚洲技术中心 桌面产品技术支持) 
这是我的程序:
Sub commandjs()
Dim MyButton As CommandBarButton
Dim Mycommand As CommandBar
Set Mycommand = CommandBars.Add
Set MyButton = Mycommand.Controls.Add(Type:=msoControlButton)
Mycommand.Name = "计算"
Mycommand.Position = msoBarFloating
Mycommand.Protection = msoBarNoProtection
MyButton.Style = msoButtonCaption
MyButton.Caption = "计算"
MyButton.Enabled = True
MyButton.OnAction = "Acessdbconn1"
Mycommand.Visible = True
End Sub
由于我刚编了一个类似的程序,所以想看看您上面的程序如何,有何不同之处。
发现调不通。
Option Explicit
Dim WithEvents oButton As Office.CommandBarButton
都会出现错误!
还有你调用的函数
.OnAction = "!<" & AddInInst.ProgId & ">"
名称好奇怪,是不是另有乾坤?


acptdta 2001-10-23
  • 打赏
  • 举报
回复
感谢您使用微软产品。



添加一个按钮。



Option Explicit

Dim oExcel As Object
Dim WithEvents oButton As Office.CommandBarButton



' 声明变量.
Set oExcel = Application
' 新建一个按钮到 standard CommandBar.
Set oButton = oExcel.CommandBars("Standard").Controls.Add(msoControlButton)

'设置该按钮的属性
With oButton
' 显示名称.
.Tag = "My Button"
.OnAction = "!<" & AddInInst.ProgId & ">"
' 设置可见性。

.Visible = True
End With




- 微软亚洲技术中心 DTA技术支持



本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款 (http://www.csdn.net/microsoft/terms.shtm)。
Ganzl 2001-10-20
  • 打赏
  • 举报
回复
使用Excle.CommandBar对象
netfor2000 2001-10-03
  • 打赏
  • 举报
回复
to :icevi(按钮工厂)

如果自己要加一个控键上去呢?
icevi 2001-09-24
  • 打赏
  • 举报
回复
如下可以去掉“格式”菜单中的“样式库”:
CommandBars("Format").Controls(14).Delete

如下可以使工具条“画图”不可视:
CommandBars("Drawing").Visible = False

若不知道其名称,有个简单办法,用录制宏的功能,看WORD 自己生成的代码是怎么写的。

zdhao 2001-09-24
  • 打赏
  • 举报
回复
你可以找到每一个功能所对应调用的宏的名称!例如一般为:call XXXXX(),其中XXXXX就是宏的名称,你可以新建一个名称一样的空宏(及无内容的宏)这样这个功能就被屏蔽了。

5,139

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧