2012-05-03 2 views
0

Я новичок в vba. Я хочу создать ppt с диаграммой и названием в ней. Я использую следующий код, но имею проблемы. Пожалуйста, предложите.базовая диаграмма + название с помощью 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), я могу успешно сгенерировать диаграмму, но я не могу добавить заголовок тогда :(

ответ

0

На пустом слайде не будет фигур, поэтому .Shapes (1) ничего не вернет (это вызывает ошибку, когда вы ссылаетесь на нее, да?)

Если вам нужно добавить заголовок на пустой слайд, вам нужно будет добавить текстовую форму, установить его текст и форматировать его по вкусу.

Это может быть проще, чтобы добавить фиктивный ppLayoutChart слайда, установите его название текст, копировать/вставить, что на ваш реального слайда, а затем удалить фиктивный слайд., который будет убедитесь, что «псевдо-заголовок» отформатирован так, как должен быть.

Или еще проще, не добавляйте пробел, добавьте слайд слайдов только в заголовке.

+0

bravo! это сработало, спасибо! – Supra

Смежные вопросы