Я хотел бы вставить информацию из таблицы Excel в PowerPoint (PPT).Здесь в столбце B указано «20XXYY».Здесь «XX» обозначает год, а «YY» обозначает номер недели в году (от 1 до 52).Я применил условное форматирование в таблице, что-либо, прежде чем текущая дата станет красной.Я хотел бы вставить отфильтрованную информацию в прямоугольную форму в PPT.Например, сколько проектов у нас было / было за конкретную неделю (см. Рисунок 1).
К сожалению, я могу создать слайд только с таблицей (см. Рисунок 2).
Я также приложил код, который я написал. См. Ниже
Sub Slidecreation()
Dim pptName As String
Dim ppt As PowerPoint.Application
Dim myPres As PowerPoint.Presentation
Dim slds As PowerPoint.Slides
Dim sld As PowerPoint.slide
Dim pptextbox As PowerPoint.Shape
Dim oLayout As CustomLayout
Dim wb As Workbook
Dim ws As Worksheet
Dim r As Range
Dim lastRw As Long
Dim y As Workbook
Set wb = ThisWorkbook
Set ws = wb.Sheets("Sheet1")
'This will open a PowerPoint template (I didn't attach the function)
pptName = openDialog()
Set ppt = CreateObject("PowerPoint.Application")
Set myPres = ppt.Presentations.Open(pptName)
Set slds = myPres.Slides
Set sld = ppt.ActivePresentation.Slides.Add(ppt.ActivePresentation.Slides.Count + 1, ppLayoutBlank)
lastRw = ws.Range("B" & Rows.Count).End(xlUp).Row
Set r = ws.Range("$A$1:$B" & lastRw)
r.Copy
sld.Shapes.PasteSpecial DataType:=ppPasteOLEObject, Link:=msoFalse
sld.Shapes(1).Height = 600
sld.Shapes(1).Width = 300
End Sub
Как создать слайд, показанный на рисунке 1? Создание отдельного текстакоробка вместо фигур будет хорошим решением.Потому что динамическое изменение размера фигуры сделает эту проблему более сложной.Положение текстового поля / фигуры не имеет значения
С уважением, Оливер