문제

아래는 Excel 스프레드 시트의 PPT로 차트를 가져 오는 데 사용하는 절차입니다. 그러나 내가 알 수없는 한 가지는 그림을 TH 화면에 붙여 넣는 대신 "개체"에 그림을 삽입하는 방법입니다. (예 : PplayoutFouroBjects를 수행 하고이 슬라이드에 4 개의 차트를 보냈다면 다른 것을 추가하기 전에 4 개 객체 선택에 표시된 각 지정된 사각형에 차트를 붙여 넣는 방법을 알아야합니다). 나는 첫 번째 것이 항상 사각형 5 인 것처럼 보이며, 코드를 올바르게 얻을 수는 없습니다. 도와주세요. 이것은 2003 사무실입니다.

sub xls2ppt()
'I use this to pull charts into ppt from excel   
Dim xlApp As Object
Dim xlWrkBook As Object
Dim lCurrSlide As Long
Set xlApp = CreateObject("Excel.Application")
' Open the Excel workbook
Set xlWrkBook = xlApp.Workbooks.Open("X:\Users\Admin\Desktop\Budget Overview.xls")
' Copy picture of the 1st chart object onto the clipboard
xlWrkBook.Worksheets(2).ChartObjects(1).CopyPicture
' Get the slide number
lCurrSlide = ActiveWindow.Selection.SlideRange.SlideNumber
' Paste the picture onto the PowerPoint slide.
ActivePresentation.Slides(lCurrSlide).Shapes.Paste
' Close the open workbook without saving changes
xlWrkBook.Close (False)
xlApp.Quit
Set xlApp = Nothing
Set xlWrkBook = Nothing
End Sub

도움을 주셔서 감사합니다. PowerPoint 용 VBA는 가장 약하지만 실제로 일을 위해 가져와야합니다! 감사합니다!

도움이 되었습니까?

해결책

afaik 당신은 UI를 통해서도 PowerPoint에서 "객체"에 차트를 붙여 넣을 수 없습니다. 말로, 텍스트 상자 나 테이블 셀에 붙여 넣을 수는 있지만 PowerPoint에는 할 수 없습니다.

대신해야 할 일은 4 개의 붙여 넣은 차트가 올바른 크기와 위치가되도록 위치하는 것입니다.

Set oSlide = ActivePresentation.Slides(lCurrSlide)
Set oShape = oSlide.Shapes.Paste
oShape.Top = 10
oShape.Left = 10
oShape.Width = 100
oShape.Height = 100
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top