2014-05-02 66 views
0

我已經編寫了一個代碼,用於將圖表從Excel工作簿動態複製到PowerPoint演示文稿。 我現在想要做的是動態更改每張幻燈片的幻燈片標題。 這裏是代碼的一個片段:將圖表從excel複製到powerpoint時更改幻燈片標題

PPApp.ActivePresentation.Slides.Add PPApp.ActivePresentation.Slides.Count + 1, ppLayoutBlank 
     PPApp.ActiveWindow.View.GotoSlide PPApp.ActivePresentation.Slides.Count 
     Sheets("sheet1").Range("V1").Value = h 
     Sheets("sheet1").Range("V11").Value = j 
     Sheets("sheet1").Range("V22").Value = k 
     Sheets("sheet1").Select 
     ActiveSheet.ChartObjects("Chart 5").Activate 
     ActiveSheet.ChartObjects("Chart 5").CopyPicture 
     PPApp.ActiveWindow.View.Paste 
     eachslideheader = Range("v2").Text & "my chart" 
     PPApp.ActivePresentation.Slides.ppLayoutTitle.Add 

PPApp.ActivePresentation.Slides.pplayouTitle.TextFrame.TextRange.Text = eachslideheader 

該代碼給出了一個錯誤,而插入標題我無法算出它out.How我應該proceed.Please幫助

+0

什麼是錯誤?哪條線路導致它? – Ripster

+0

我添加布局的標題標題它會拋出錯誤 – shiven

回答

0
' Assuming you're running this from w/in Excel ... 
Dim oSl as Object  

' Get a reference to the added slide object to make things simpler later 
' Make the new slide a TitleOnly layout so that it automatically gets a title 
' placeholder: 
Set oSl = PPApp.ActivePresentation.Slides.Add PPApp.ActivePresentation.Slides.Count + 1, _ 
     ppLayoutTitleOnly 
    ' ppLayoutTitleOnly = 11 

      PPApp.ActiveWindow.View.GotoSlide PPApp.ActivePresentation.Slides.Count 

      Sheets("sheet1").Range("V1").Value = h 
      Sheets("sheet1").Range("V11").Value = j 
      Sheets("sheet1").Range("V22").Value = k 
      Sheets("sheet1").Select 
      ActiveSheet.ChartObjects("Chart 5").Activate 
      ActiveSheet.ChartObjects("Chart 5").CopyPicture 
      PPApp.ActiveWindow.View.Paste 
      eachslideheader = Range("v2").Text & "my chart" 

'   PPApp.ActivePresentation.Slides.ppLayoutTitle.Add 

' PPApp.ActivePresentation.Slides.pplayouTitle.TextFrame.TextRange.Text = eachslideheader 

oSl.Shapes.Title.Textframe.TextRange.Text = eachslideheader 
+0

謝謝,Ripster。 –

相關問題