Vba 维护从Excel到Powerpoint的字体格式
我有一个VBA宏,可以将Excel中的图表粘贴到PowerPoint中,这很有效 我已调整宏,将同一工作表中某些单元格的单元格内容复制到PowerPoint中。尽管在宏复制之前,将Excel中的字体大小设置为与PowerPoint模板中的相同(两者都是40点),但在宏运行之前,字体粘贴到18点,而不是Excel中设置的40点 处理所有这些问题的代码如下所示:Vba 维护从Excel到Powerpoint的字体格式,vba,excel,powerpoint,Vba,Excel,Powerpoint,我有一个VBA宏,可以将Excel中的图表粘贴到PowerPoint中,这很有效 我已调整宏,将同一工作表中某些单元格的单元格内容复制到PowerPoint中。尽管在宏复制之前,将Excel中的字体大小设置为与PowerPoint模板中的相同(两者都是40点),但在宏运行之前,字体粘贴到18点,而不是Excel中设置的40点 处理所有这些问题的代码如下所示: 'Opens a new PowerPoint presentation based on template and pastes dat
'Opens a new PowerPoint presentation based on template and pastes data into Slide 2 of Powerpoint from Excel
Dim PPApp As PowerPoint.Application, PPPres As PowerPoint.Presentation, PPSlide As PowerPoint.Slide, PPShape As Object, PPChart As Object
Dim XLws As Worksheet
Set XLws = ActiveSheet
Set PPApp = New PowerPoint.Application
Set PPPres = PPApp.Presentations.Open("C:\Users\Colin\Dropbox (Edge45)\Edge45 Team Folder\Edge45 Company Documents\Templates\Powerpoint Templates\Edge45 Monthly Report Template Macro.potm", Untitled:=msoTrue)
PPApp.Visible = True
Set PPSlide = PPPres.Slides(12)
XLws.ChartObjects(1).Copy ' or XLws.ChartObjects("Chart 2").Copy
Set PPChart = PPSlide.Shapes.PasteSpecial(DataType:=ppPasteDefault)
With PPChart
.Left = 18
.Height = 322
.Top = 121
.Width = 531
End With
'Copies Contents of Cells Q36 and R36 in excel worksheet and pastes as text into slide 13 of presentation
XLws.Range("Q36:R36").Copy
Set PPChart = PPSlide.Shapes.PasteSpecial(DataType:=ppPasteDefault)
Set PPSlide = PPPres.Slides(13)
科林
复制后是否要更改字体大小?可能是自动链接/更新的
如果您可以使用粘贴选项之一手动复制,我建议您使用以下文章中引用的ExecuteMso
命令来更准确地模拟您正在做的事情:
科林
复制后是否要更改字体大小?可能是自动链接/更新的
如果您可以使用粘贴选项之一手动复制,我建议您使用以下文章中引用的ExecuteMso
命令来更准确地模拟您正在做的事情:
作为图像/图片粘贴怎么样?是的,我很乐意这样做,但首先,它包括两个单元格之间的线分隔,尽管没有指定内部边框;其次,我希望在复制的文本上有阴影-如果我可以从图像粘贴中获得阴影,我很乐意这样做!在粘贴XLws.Range(“Q36:R36”)中的数据之前,是否需要将PPSlide设置为幻灯片13?粘贴为图像/图片如何?是的,我很乐意这样做,但首先,它包括两个单元格之间的线分隔,尽管没有指定内部边框,其次,我希望在我复制的文本上有一个阴影-如果我能从图像粘贴中得到阴影,我很乐意这样做!在粘贴XLws.Range(“Q36:R36”)中的数据之前,是否需要将PPSlide设置为幻灯片13?