如何在PowerPoint VBA中制作进度条?

4

我该如何使用PowerPoint VBA制作进度条?它应该是幻灯片上的动画效果。


这么多未解答的问题...它会在演示期间运行吗?在制作幻灯片时?弹出框中?在幻灯片中?它是如何被调用的?什么正在进行?你怎么知道有进展?是否有可用的测量数据? - guitarthrower
你们两个都是对的,但是Otaku提供的代码帮了我 :) - aF.
3个回答

4

2

这个方法将把进度条放置在顶部,并防止它出现在第一张幻灯片上(不像pptfaq脚本):

http://www.faronics.com/news/blog/how-to-add-a-progress-bar-to-powerpoint/

  1. 在Power Point中,转到“工具”>“宏”>“Visual Basic编辑器”。

  2. 在Office 2010中,您可能需要激活开发人员选项卡才能进入编辑器。Mac版本将通过“开发人员”选项卡和“编辑器”带您到那里。

  3. 一旦进入编辑器,转到“插入”>“模块”。

四. 将以下代码粘贴到这个新创建的模块中:

Sub Presentation_Progress_Marker() 
On Error Resume Next 
With ActivePresentation 
For N = 2 To .Slides.Count
.Slides(N).Shapes(“Progress_Marker”).Delete 
Set s = .Slides(N).Shapes.AddShape(msoShapeRectangle, 0, 0, N * .PageSetup.SlideWidth /.Slides.Count, 10) 
Call s.Fill.Solid
s.Fill.ForeColor.RGB = RGB(23, 55, 94) 
s.Line.Visible = False
s.Name = “Progress_Marker” Next N: End With End Sub

五. 关闭编辑器。最后,运行宏:工具>宏>宏,然后选择—Presentation_Progress_Marker。


0

加入微软的进度条控件怎么样?

由于PowerPoint不是实时应用程序,如果使用一些形状来制作进度条,则可能无法看到进度条移动。有时您可能只会看到最终结果-仅完整的进度条甚至根本没有任何东西)。 相反,进度条控件更具“实时性”或更具时效性。(我承认这是一个有点经典的设计。)

以下是一些步骤:

  1. 要添加进度条控件,首先需要在VBE(Alt-F11)窗口中添加UserForm。(菜单:插入-UserForm)

  2. 右键单击出现的工具箱窗口,选择其他控件。 向下滚动并检查“Microsoft Progress Bar Control,版本x.0” (此控件由MSCOMCTL.OCX提供)

点击确定。现在您可以在工具列表的末尾看到进度条图标。 单击它并在UserForm1上绘制进度条。调整UserForm1窗口的大小。越小越好。 您可以通过在属性窗口中更改标题值将窗口的标题从“UserForm1”更改为“正在进行...”或任何您喜欢的消息。

添加一个模块,然后加入以下代码。

Option Explicit
Sub MyJob()

显示进度条窗口 UserForm1.Show vbModeless '应添加vbModeless选项
Dim i As Long, Total As Long Total = 200
Randomize For i = 1 To Total
'在此处放置一些代码。特别是需要花费一些时间的工作。 '例如,在幻灯片#1上添加一个带有随机颜色的圆角框 With ActivePresentation.Slides(1).Shapes.AddShape(msoShapeRoundedRectangle, i, i, 500, 200) .Name = "Shape_" & i .Fill.ForeColor.RGB = RGB(255 * Rnd, 255 * Rnd, 255 * Rnd) .Adjustments(1) = 0.5 .Line.Visible = msoFalse .TextFrame.TextRange = i End With
'更新进度条 UserForm1.ProgressBar1.Value = Int(i * 100 / Total) '整数值介于0和100之间。否则,会弹出错误 UserForm1.Repaint '刷新用户界面
Next i
'关闭ProgressBar UserForm Unload UserForm1
End Sub

默认情况下,进度条的值应为介于0和100之间的整数。如果是“101”,则会出现错误。所以要小心。

  1. 此外,您可以通过更改属性值来改变进度条的形状。例如,进度条大小、位置(顶部、左侧)、最小值(0)或最大值(默认为100,但您可以将其更改为50或任何值)。您也可以通过编程方式进行更改。

进度条有点老式,但比用户创建的形状类型进度条反应更快,因此仍然很有用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接