簡體   English   中英

使用VBA將Excel數據粘貼到Powerpoint中,字體大小不變

[英]Using VBA to paste Excel data into Powerpoint, Font Size not changing

是堆棧溢出發布的新功能,因此請指導我。 :)

我需要創建一個程序,將Excel中的某些值粘貼到PowerPoint中並對其進行格式化。

到目前為止,我已經編寫了VBA代碼,可以將單元格值從Excel轉換為PowerPoint。 但是,字體大小不會在Powerpoint中更改,而字體顏色和字體類型將會更改。 我不確定為什么會這樣,但是我認為這可能是由於某些Powerpoint設置或某些我不熟悉的VBA引起的。

請協助!

代碼如下:

Dim title1 As Excel.range
Dim App As PowerPoint.Application
Dim Ptn As PowerPoint.Presentation
Dim mySlide As PowerPoint.Slide
Dim myShape As PowerPoint.Shape

Set title1 = ThisWorkbook.Sheets("Sheet4").range("C1:C1")

'Set Font Properties
title1.Font.Size = 28
title1.Font.Color = RGB(0, 112, 192)
title1.Font.Name = "Century Gothic"


'Create Slide 1
Set mySlide = Ptn.Slides.Add(1, ppLayoutBlank)

'Copy Title1
title1.Copy

'Paste to PowerPoint and position
mySlide.Shapes.PasteSpecial DataType:=ppPasteDefault

Set myShape = mySlide.Shapes(mySlide.Shapes.Count)

'Set position
myShape.Left = 35
myShape.Top = 200

如果要專門將excel字段粘貼為該幻燈片的標題,請嘗試:

mySlide.Shapes.AddTitle.TextFrame.TextRange.Text = title1

編輯:您可以檢查幻燈片是否已經有可以使用的標題

If Not mySlide.Shapes.HasTitle Then
    mySlide.Shapes.AddTitle.TextFrame.TextRange.Text = title1
Else
   mySlide.Shapes.Title.TextFrame.TextRange.Text = title1
End If

AddTitle還具有用於設置字體,格式,大小,顏色等的各種屬性。請參閱: 使用Excel VBA添加Powerpoint標題幻燈片

我的直覺是您需要添加Paste:=xlPasteAllUsingSourceTheme來粘貼特殊內容。 你可以試試這個嗎?

'Paste to PowerPoint and position
mySlide.Shapes.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, DataType:=ppPasteDefault

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM