为什么我加载了宏,却什么都没有
我建了个PPT文件,然后录制了宏并保存了,然后我另存为加载宏PPA文件.我再打开一个新的PPT,然后在加载宏里选择了我建的PPA文件,它弹出窗口问是否要启用宏,我选择了是.之后就是问题了,我选择运行宏,但里面什么宏都没有,为什么,我已经加载了啊
请问…………………… 把你的文件传上来看看
把此文件另存为PPA 请参考一下这个: 守柔版主:
你好,我已经参考了你的例子,做了修改(增加了两个SUB:AUTO_OPEN,AUTO_CLOSE),请看附件.
现在存在以下几个问题:1.MARK.PPT打开时不会自动运行AUTO_OPEN,要手工点击运行宏
2.AUTO_OPEN与AUTO_CLOSE里关于删除COMMANDBAR的命令无效,我不懂写,只是根据你的,我自己猜测写的.
3.如果把MARK.PPT另存为MARK.PPA后,打开MARK.PPA会自动运行AUTO_OPEN,但我发现我存的在MARK.PPT的图形ICON,ICON1……,并没有跟着转换到MARK.PPA里,因此运行AUTO_OPEN时什么图标都没有,而且点击COMMANDBAR时会出错,就是提示没有那些图形.
我的目的是不论新建还是打开现有的POWERPOINT都会先启用宏,增加了菜单栏,然后我点击按钮时就能改上我设计的章.
请给予指导.
我只能帮到这个地方了:
Option Explicit'***************************************'***</B>功能:</B> </B>添加浮动菜单栏</B>'***************************************Public Sub AddOurToolbar() Dim IDS_TOOLBAR_NAME As String Dim ourToolBar As CommandBar, i As Byte, myButton As CommandBarControl, mySub As String Dim strTip As String, strCaption As String, strName As String IDS_TOOLBAR_NAME = "'</B>信息安全</B>'</B>盖章</B>" Application.CommandBars(IDS_TOOLBAR_NAME).Delete Set ourToolBar = Application.CommandBars.Add(Name:=IDS_TOOLBAR_NAME, Position:=msoBarFloating, Temporary:=True) ourToolBar.Visible = True For i = 1 To 4 Set myButton = ourToolBar.Controls.Add Select Case i Case 1 mySub = "</B>秘印章</B>" strTip = "</B>加盖</B>'</B>秘</B>'</B>印章</B>" strCaption = "</B>秘</B>" strName = "Icon" Case 2 mySub = "</B>限定印章</B>" strTip = "</B>加盖</B>'</B>限定</B>'</B>印章</B>" strCaption = "</B>限定</B>" strName = "Icon1" Case 3 mySub = "</B>禁复印印章</B>" strTip = "</B>加盖</B>'</B>禁复印</B>'</B>印章</B>" strCaption = "</B>禁复印</B>" strName = "Icon2" Case 4 mySub = "</B>绝密印章</B>" strTip = "</B>加盖</B>'</B>绝密</B>'</B>印章</B>" strCaption = "</B>绝密</B>" strName = "Icon3" End Select With myButton .OnAction = mySub .TooltipText = strTip .Caption = strCaption .Style = msoButtonIcon With Presentations("mark").Slides(1).Shapes(strName) .Visible = msoTrue .Copy .Visible = msoFalse End With .PasteFace .Visible = True End With NextEnd Sub'----------------------Sub </B>秘印章</B>() Presentations("mark").Slides(1).Shapes("Icon").Copy ActiveWindow.View.Paste With ActiveWindow.Selection.ShapeRange .Left = 0 .Top = 0 .Visible = msoTrue End With ActiveWindow.Selection.UnselectEnd Sub'----------------------Sub </B>限定印章</B>() Presentations("mark").Slides(1).Shapes("Icon1").Copy ActiveWindow.View.Paste With ActiveWindow.Selection.ShapeRange .Left = 0 .Top = 0 .Visible = msoTrue End With ActiveWindow.Selection.UnselectEnd Sub'----------------------Sub </B>禁复印印章</B>() Presentations("mark").Slides(1).Shapes("Icon2").Copy ActiveWindow.View.Paste With ActiveWindow.Selection.ShapeRange .Left = 0 .Top = 0 .Visible = msoTrue End With ActiveWindow.Selection.UnselectEnd Sub'----------------------Sub </B>绝密印章</B>() Presentations("mark").Slides(1).Shapes("Icon3").Copy ActiveWindow.View.Paste With ActiveWindow.Selection.ShapeRange .Left = 0 .Top = 0 .Visible = msoTrue End With ActiveWindow.Selection.UnselectEnd Sub'----------------------</B>这是我修改了一下代码。</B>问题:</B>另存为PPA后,加载后,运行AUTO_OPEN是没有问题的,问题的关键在于我也不知道如何调用该模块对应的PPT文稿中的四个图形,WORD中有THISDOCUMENT,EXCEL中有THISWORKBOOK,可PPT中,找不到(或许我没有找到)类似的对象。</B>上述代码中的解决思路:</B>将此代码保存于你上传的PPT文档中,手动运行(ALT+F8)“AddOurToolbar”宏,可以向PPT的APPLICATION对象增加一个浮动工具栏,在APPLICAITON退出后会自动删除,它可作用于其它PPT对象。显然不是很好。</B>解决的另外一种思路:</B>直接在加载宏(PPA)中,设计出这四个图形,这样可以解决上述问题,当然,或许还有更好的办法,但我对PPT不熟,可能需要一些时间,如果我有空的话,当然,可以在加载这个加载宏时,打开带有这四个图形的PPT文档,以复制,我没具体测试,理论上可行。</B>以上意见供参考。</B> 非常感谢守柔版主锲而不舍的帮忙,
小弟永记于心.
{:5_203:} 真的好热心,我也谢谢 我也想问这个问题,PPT里和Excel太不一样了, 很不容易做了个小工具想把它变为PPA,结果变成PPA后也是什么也没有。
Excel中有AutoRun函数,PPT里怎么不行啊/
页:
[1]