0

我是 vba 的新手。我想生成一个带有图表和标题的ppt。我正在使用以下代码,但有问题。请建议。

Set pptobj = CreateObject("PowerPoint.Application")
pptobj.Visible = TRUE
Set presentn= pptobj.Presentations.Add
Dim dirtemp
dirtemp= CreateObject("WScript.Shell").ExpandEnvironmentStrings("%Temp%")
Dim tempImg
tempImg = dirtemp+"\test.gif"
Dim cnt
ind = 1
'my chart is in chartobj
if Not IsNull ( chartobj) then
    presentn.Slides.Add ind, 8
    chartobj.ExportPicture tempImg, "gif"        
    presentn.Slides(ind).Shapes(1).TextFrame.TextRange.Text = "some title"
    presentn.Slides(ind).Shapes(2).AddPicture tempImg, false, true, 50, 50
ind = ind + 1
end if

我正在使用 ppLayoutChart(值 8)。但是,如果我使用 layout = 12 (ppLayoutBlank),我可以成功生成图表,但是我无法添加标题:(

4

1 回答 1

0

在空白布局幻灯片上,将没有形状,因此 .Shapes(1) 不会返回任何内容(当您引用它时会抛出错误,是吗?)

如果您需要为空白幻灯片添加标题,则必须添加文本形状,设置其文本并根据口味设置其格式。

添加虚拟 ppLayoutChart 幻灯片,设置其标题文本,将其复制/粘贴到您的真实幻灯片上,然后删除虚拟幻灯片可能会更简单。这将确保“伪标题”按应有的格式格式化。

或者更简单,不要添加空白,添加仅标题的布局幻灯片。

于 2012-05-03T15:37:33.483 回答