我有以下VBA代码来创建一个新的PowerPoint幻灯片:
longSlideCount = ActivePresentation.Slides.Count
With ActivePresentation.Slides
Set slideObject = .Add(longSlideCount + 1, ppLayoutTitle)
End With
Run Code Online (Sandbox Code Playgroud)
...插入'ppLayoutTitle'类型的新幻灯片,但我想知道是否可以在'幻灯片母版视图'中创建自定义布局,然后将该特定幻灯片模板插入到演示文稿中?
提前致谢!!!
在Powerpoint中通过VBA生成幻灯片的过程中,我需要在生成的文本中插入“ Wingdings符号”,该文本是两个值的比较。我做了这种方法,它完全可以按我的意愿工作
Sub formatDifference(header As String, old As Integer, now As Integer, txt As TextRange)
Dim diff As Integer
diff = old - now
With txt
If (diff > 0) Then
.InsertSymbol "Wingdings", getArrowCharCode("down")
' getArrowCharCode is a custom function to get the
' char code as an Integer
ElseIf (diff = 0) Then
.InsertSymbol "Wingdings", getArrowCharCode("right")
Else
.InsertSymbol "Wingdings", getArrowCharCode("up")
End If
.InsertBefore header & now & " (" ' <-- note this line
.InsertAfter " " & Abs(diff) …Run Code Online (Sandbox Code Playgroud) 我正在开发 PowerPoint 2010 (C#) 插件,我想阻止最终用户移动或编辑我以编程方式创建的所有形状。
我已经在框架中寻求过,但我认为它不允许以编程方式进行。有没有人遇到过这种限制并且可以帮助我找到解决方案?
我知道有些人使用 C++ 创建了他们的加载项,因为 office 有很多限制。
我试图在powerpoint VBA中创建一个弹出问题,到目前为止一切顺利.但是下面的代码似乎不起作用.想法是你得到一个价值的弹出框,输入100 - 200(含).但必须输入一个值或可以接受failed作为输入.无法取消输入框或无效/空响应.内循环(循环1)似乎工作正常,但如果我输入150它不会终止循环2而是继续前进,除非类型失败但它停止任何文本而不是仅停止"failed".
Sub OnSlideShowPageChange(ByVal SSW As SlideShowWindow)
'Declare Variables
Dim xType, xLimitHi, xLimitLo, xPrompt As String
Dim InputvarTemp As String
Dim msgResult As Integer
xLimitHi = 200
xLimitLo = 100
xPrompt = "Enter Value between 100 and 200 (Inclusive)"
Do 'loop 2 check within limit or failed
msgResult = vbNo
Do 'loop 1 check Empty / Null or Cancelled input
InputvarTemp = InputBox(xPrompt, xPrompt)
If StrPtr(InputvarTemp) = 0 Then ' Check if …Run Code Online (Sandbox Code Playgroud) 我希望能够创建一个宏,该宏将在演示者笔记中的文本上启动文本到语音转换。我将把宏应用到一个 ActiveX 按钮上,它允许用户开始阅读,最终我想将幻灯片的动画计时到语音。
我在 Excel VBA 中成功写出命令来与单元格对话:
application.speech.speak (sheet1.cells(1,1))
Run Code Online (Sandbox Code Playgroud)
我找到了一个代码,可以将文本输入到所有幻灯片的演讲者备注部分。
Sub AddTextAllSpeakerNotes()
Dim sld As Slide
For Each sld In ActivePresentation.Slides
sld.NotesPage.Shapes.Placeholders(2).TextFrame.TextRange = ""
Next sld
End Sub
Run Code Online (Sandbox Code Playgroud)
我已经添加了 Microsoft Speech Object Library 参考,但我永远无法让 VBA 识别语音命令并自动完成任何有助于我弄清楚如何进一步操作的命令。
如何编写将文本转语音命令应用于特定幻灯片的演讲者备注部分的代码。
在 PowerPoint 2013 中,可以从 CommandBar 对象获取选择窗格属性,如下所示:
Application.CommandBars("Selection")
Run Code Online (Sandbox Code Playgroud)
(请注意,对于 PowerPoint 2010 和 2007,名称为“选择和可见性”)
在 UI 中使用 Alt+F10 显示选择窗格时,以下两个属性将切换为 true:
Application.CommandBars("Selection").Visible
Application.CommandBars("Selection").Enabled
Run Code Online (Sandbox Code Playgroud)
但是,当尝试以编程方式将这些设置为 true 时,.Visible=True 语句会导致发生未指定的自动化错误,并且 .Enabled=True 语句会执行,但不会更改此属性的状态。
但是,这是奇怪的部分,如果在 PowerPoint 首次运行时使用 Alt+F10 显示和隐藏选择窗格,那么这两行代码就可以工作!我检查了 Alt+F10 之前和之后的所有属性,只有 .Visible 和 .Enabled 属性被切换。
如何可靠且更好地显示选择窗格,而无需沿着 SendKeys 路线进行?
powerpoint vba powerpoint-2007 powerpoint-2010 powerpoint-2013
不知何故,我丢失了PowerPoint中的故事板选项卡.我该如何恢复?谢谢.
我正在使用PowerPoint2010和PowerPoint2013
我正在尝试.pptx使用OpenXML SDK 2.0 分析现有的PowerPoint 2010 文件.
我想要达到的目标是
我已经开始并且到目前为止 - 我可以枚举SlideParts来自PresentationPart- 但我似乎无法找到一种方法来使这个有序的枚举 - 幻灯片以几乎任意的顺序返回...
按照PPTX文件中定义的顺序获取这些幻灯片的任何技巧?
using (PresentationDocument doc = PresentationDocument.Open(fileName, false))
{
// Get the presentation part of the document.
PresentationPart presentationPart = doc.PresentationPart;
foreach (var slide in presentationPart.SlideParts)
{
...
}
}
Run Code Online (Sandbox Code Playgroud)
我希望找到类似于SlideID或Sequence数字之类的东西 - 我可以在Linq表达式中使用的某些项目或属性
.OrderBy(s => s.SlideID)
Run Code Online (Sandbox Code Playgroud)
在那个slideparts集合上.
我想定义一个数组,如:
sample_array = Array( _
"foo", _
"bar", _
...
"dog", _
"cat" _
)
Run Code Online (Sandbox Code Playgroud)
...在VB for Applications(本例中为PowerPoint 2010)中编写的宏中,但是我需要从文本文件中定义数组,该文件的格式如下:
foo
bar
...
dog
cat
Run Code Online (Sandbox Code Playgroud)
定义文本文件路径并将值(假设它们总是常规的ascii字符串)直接读入数组的最简单方法是什么?
谢谢!