ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1048|回复: 1

[求助] 都是优化惹的祸:VBA代码怠工没有动静

[复制链接]

TA的精华主题

TA的得分主题

发表于 2016-12-20 21:24 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 weiyingde 于 2016-12-21 07:36 编辑

下面代码要实现的目标是:
    在幻灯片放映模式下,母版中是否有一个叫做“进度条”的图形,没有就创建一个;有的话,就对其进行相应的操作,代码如下。
问题是:
1、有的话可以操作;
2、没有的话却不能创建。

Sub 幻灯片进度条()
'颜色1 = Array(vbRed, vbBlack, vbGreen, vbYellow, vbMagenta, vbBlue, vbCyan)
'颜色2 = Array(vbBlack, vbGreen, vbYellow, vbMagenta, vbBlue, vbCyan, vbRed)
'j = i Mod 7 + 1
Randomize
n = ActivePresentation.Slides.Count
i = ActivePresentation.SlideShowWindow.View.CurrentShowPosition
SlideMaster.Label1.Caption = "当 前" & vbCrLf & IIf(i = n, "结 束", i & "/" & n)
w = ActivePresentation.PageSetup.SlideWidth - 80
t = ActivePresentation.PageSetup.SlideHeight - 20
If ActivePresentation.SlideMaster.Shapes("进度条") Is Nothing Then
   With ActivePresentation.SlideMaster.Shapes.AddShape(1, 72, t - 10, w * i / n, 30)
        .Name = "进度条"
        .Fill.BackColor.RGB = RGB(Int(255 * Rnd) + 1, Int(255 * Rnd) + 1, Int(255 * Rnd) + 1)
        With .TextFrame.TextRange
          .Text = Format(i / n, "0%")
          .ParagraphFormat.Alignment = ppAlignRight
        End With
        .Fill.ForeColor.RGB = RGB(Int(255 * Rnd) + 1, Int(255 * Rnd) + 1, Int(255 * Rnd) + 1)
   End With
Else
   With ActivePresentation.SlideMaster.Shapes("进度条")
     .Width = w * i / n
     .Fill.BackColor.RGB = RGB(Int(255 * Rnd) + 1, Int(255 * Rnd) + 1, Int(255 * Rnd) + 1)
     With .TextFrame.TextRange
          .Text = Format(i / n, "0%")
          .ParagraphFormat.Alignment = ppAlignRight
     End With
     .Fill.ForeColor.RGB = RGB(Int(255 * Rnd) + 1, Int(255 * Rnd) + 1, Int(255 * Rnd) + 1)
   End With
  
End If
If i = n Then CreateObject("sapi.spvoice").speak "this is over!"
End Sub

该怎样修改才能创建这个图形?

都是优化惹的祸.zip

43.47 KB, 下载次数: 17

TA的精华主题

TA的得分主题

发表于 2016-12-24 07:31 | 显示全部楼层
看来PPT VBA使用研究的人不多,否则早有答案了。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-22 22:08 , Processed in 0.030661 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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