找回密码
 立即注册
搜索

如何在ppt上写VBA?

2
回复
493
查看
[复制链接]

2

主题

9

帖子

60

幻币

一流武者

Rank: 3Rank: 3

积分
253
QQ
2017-2-7 17:05:32 显示全部楼层 |阅读模式
word和excel都能录制,因此会方便很多。
但是只从2013版开始就没有了录制宏的功能。
我想了解一下,应该怎么在所有幻灯片里面都添加一个形状呢?
PPT学习论坛
回复

使用道具 举报

2

主题

7

帖子

10

幻币

一流武者

Rank: 3Rank: 3

积分
205
QQ
2017-2-7 18:07:59 显示全部楼层
给一个实例,你可照葫芦画瓢。
代码如下:
Sub 添加形状()
For Each sld In ActivePresentation.Slides
  For Each shp In sld.Shapes
    If shp.Type = 1 Then shp.Delete
  Next
Next
Set sld = Nothing
For i = 1 To ActivePresentation.Slides.Count
  Set sld = ActivePresentation.Slides(i)
  With sld.Shapes.AddShape(i, 30 * i, 20 * i, 300 + i * 8, 50 + i * 15)
        Randomize
       .Fill.BackColor.RGB = RGB(Int(Rnd * 255), Int(Rnd * 255), Int(Rnd * 255))
       .Fill.ForeColor.RGB = Choose(i Mod 5 + 1, vbMagenta, vbGreen, vbBlue, vbCyan, vbYellow, vbRed)
       With .TextFrame.TextRange
            .Text = "我是第" & i & "个性状"
            .Font.NameFarEast = Choose(i Mod 5 + 1, "宋体", "黑体", "华文新魏", "华文彩云", "华文细黑")
            .Font.Size = 20 + 4 * i
            .Font.Color.RGB = Choose(i, vbRed, vbGreen, vbBlue, vbYellow, vbCyan, vbMagenta)
       End With
       With .Glow
          .Color.RGB = Choose(i Mod 5 + 1, vbGreen, vbBlue, vbCyan, vbYellow, vbRed)
          .Radius = 0.1 * i
       End With
       With .ThreeD
         .BevelTopDepth = 20 * i
         .ExtrusionColor.RGB = Choose(i Mod 5 + 1, vbCyan, vbBlue, vbYellow, vbRed, vbGreen)
       End With
  End With
Next
End Sub
见附件。
PPT学习论坛
回复 支持 反对

使用道具 举报

3

主题

7

帖子

75

幻币

江湖少侠

Rank: 2

积分
153
QQ
2017-2-7 19:34:56 显示全部楼层
你是怎么学习ppt的vba编程的啊?
PPT学习论坛
回复 支持 反对

使用道具 举报

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