找回密码
 立即注册
搜索

VBA实现PPT时间动态显示

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

19

主题

224

帖子

49

幻币

一流武者

Rank: 3Rank: 3

积分
295
QQ
2016-4-12 12:49:53 显示全部楼层 |阅读模式
因为有时外出做ppt要动态显示时间,这时下不到一个flash,只能用vba代码实现
在论坛上搜到代码执行没有问题,有些疑问请教
(ppt2003,都是执行在母版,宏没有定义到可视执行对象,放映前先执行start宏,之后stopit)
Dim isRunning As Boolean //这里有必要先设定isrunning形式么,删了好像也没有影响
Sub start()
isRunning = True
Do While isRunning
DoEvents
ActivePresentation.SlideMaster.Shapes("Time").TextFrame.TextRange.Text = Format(TimeValue(Format(Now, "hh:mm:ss"))) //有一个调用shapes("time")名称问题,如何设定文本框名称?
Loop
End Sub
Sub stopit()
isRunning = False
SlideShowWindows(Index:=SlideShowWindows.Count).View.Exit
End Sub
//这里觉得loop函数容易出问题,运行后还必须停止,有没有更简单的办法?
由于不知道调用的shapes("time")名称如何直接定义到文本框,又找了段代码设定文本框名称"time"
Sub Name()
On Error GoTo AbortNameShape
Dim Name$
If ActiveWindow.Selection.ShapeRange.Count = 1 Then
Name$ = ActiveWindow.Selection.ShapeRange(1).Name
Name$ = InputBox$("请给这个图形命名", "Shape Name", Name$)
If Name$  "" Then
ActiveWindow.Selection.ShapeRange(1).Name = Name$
End If
Else
MsgBox "Only 1 Shape is allowed to be selected"
Exit Sub
End If
Exit Sub
AbortNameShape:
MsgBox "没有选择图形"
End Sub
//觉得这样很麻烦,有没有更简单的方法直接给文本框对象定义名称?(指不用vba,直接菜单操作)
谢谢
PPT学习论坛
回复

使用道具 举报

11

主题

202

帖子

34

幻币

一流武者

Rank: 3Rank: 3

积分
235
QQ
2016-4-12 14:51:56 显示全部楼层
你这个大骗子。什么都没有
PPT学习论坛
回复 支持 反对

使用道具 举报

12

主题

228

帖子

42

幻币

一流武者

Rank: 3Rank: 3

积分
280
QQ
2016-4-12 15:26:54 显示全部楼层
不错的想法,应该可行的
PPT学习论坛
回复 支持 反对

使用道具 举报

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