找回密码
 立即注册
搜索

请教:想要对幻灯片进行循环操作的代码怎么写?

21
回复
1721
查看
[复制链接]

15

主题

203

帖子

37

幻币

一流武者

Rank: 3Rank: 3

积分
246
QQ
2010-1-27 11:24:00 显示全部楼层 |阅读模式
ppt中共有N张幻灯片,每张幻灯片上有一个textbox1控件。
现在需要在每张幻灯片的textbox1中都写入一个“A”字,这个代码怎么写呢?
也就是说,先要判断ppt中有多少张幻灯片,再逐一对其进行写入的操作。
恳请高手相助,谢谢!
PPT学习论坛
回复

使用道具 举报

13

主题

506

帖子

338

幻币

豪侠武师

Rank: 4

积分
855
QQ
2010-1-27 12:49:34 显示全部楼层
用 For Each
PPT学习论坛
回复 支持 反对

使用道具 举报

21

主题

223

帖子

58

幻币

一流武者

Rank: 3Rank: 3

积分
290
QQ
2010-1-27 13:01:54 显示全部楼层
谢版主关注!这个我真不会做,恳请详细说明一下好么?
我这样写,试了不行:
for i=1 to slides.count
with slides(i)
.textbox1.value=小
end with
next
请版主多多指教,谢谢!
PPT学习论坛
回复 支持 反对

使用道具 举报

19

主题

204

帖子

52

幻币

一流武者

Rank: 3Rank: 3

积分
267
QQ
2010-1-27 13:18:28 显示全部楼层
给你写个自动化宏:
Sub onSlideShowpageChange()   
    For Each sld In ActivePresentation.Slides
        For Each shp In sld.Shapes
            If shp.Type = msoOLEControlObject Then
                shp.OLEFormat.Object.Text = A
            End If
        Next
    Next   
End Sub
PPT学习论坛
回复 支持 反对

使用道具 举报

17

主题

218

帖子

44

幻币

一流武者

Rank: 3Rank: 3

积分
286
QQ
2010-1-27 13:18:46 显示全部楼层
多谢laose版主出手相助!!!就是这个意思了。
只是离我的实际需要还未达成最后的效果:我是想在每个textbox1中写入“A”,而在每个textbox2中写入“B”。
(您的代码是在所有的textbox中都写入 A  的。)
附件如下,请参考赐教,谢谢!
heop2.rar (18.21 KB, 下载次数: 241)
PPT学习论坛
回复 支持 反对

使用道具 举报

14

主题

294

帖子

112

幻币

一流武者

Rank: 3Rank: 3

积分
415
QQ
2010-1-27 13:26:10 显示全部楼层
你没说清楚啊,加个FOR循环就行了:
Sub onSlideShowpageChange()
   
    Dim i As Integer
   
    For Each sld In ActivePresentation.Slides
        For Each shp In sld.Shapes
            If shp.Type = msoOLEControlObject Then
                For i = 1 To sld.Shapes.Count
                    sld.Shapes(TextBox & i).OLEFormat.Object.Text = Chr(64 + i)
                Next
            End If
        Next
    Next
   
End Sub
PPT学习论坛
回复 支持 反对

使用道具 举报

17

主题

211

帖子

51

幻币

一流武者

Rank: 3Rank: 3

积分
275
QQ
2010-1-27 13:38:40 显示全部楼层
版主,您好!以下这句代码在附件中未能通过,请教怎么处理,谢谢您!
                    sld.Shapes(i).OLEFormat.Object.Text = Chr(64 + i)
PPT学习论坛
回复 支持 反对

使用道具 举报

17

主题

195

帖子

37

幻币

一流武者

Rank: 3Rank: 3

积分
249
QQ
2010-1-27 14:18:03 显示全部楼层
看我更新后的代码如何??
PPT学习论坛
回复 支持 反对

使用道具 举报

20

主题

225

帖子

50

幻币

一流武者

Rank: 3Rank: 3

积分
277
QQ
2010-1-27 14:19:17 显示全部楼层
真后悔来的这么晚!虽然在同学们中间做的还是不错的,可是,看见这里高手们的帖子,才知道自己有多么……
PPT学习论坛
回复 支持 反对

使用道具 举报

14

主题

215

帖子

36

幻币

一流武者

Rank: 3Rank: 3

积分
274
QQ
2010-1-27 14:21:47 显示全部楼层
回版主,还是未能在附件中通过。还要请您费心,谢谢!
我原来写了几十个 with....,  end with:
    With Slide1
        .TextBox1.Value = A
        .TextBox2.Value = B
end with
    With Slide2
        .TextBox1.Value = A
        .TextBox2.Value = B
end with
..........
现在就是想的要用循环操作的方法来简化原表的代码,可是怎么也弄不成功。
PPT学习论坛
回复 支持 反对

使用道具 举报

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