Создание разных диаграмм на каждом слайде ppt из листа Excel - PullRequest
0 голосов
/ 05 ноября 2019

Я думаю, что это первый раз, когда я спрашиваю об этом форуме, но давайте попробуем, потому что мне действительно нужно сделать это для моей диссертации.

Я провел опрос с 23 вопросами. Есть три группы людей, которые ответили на опрос, и теперь у меня есть данные в листе Excel: введите описание изображения здесь

Теперь я хочу сделать слайд с глубоким погружением (введите описание изображения здесь ) для каждого отдельного вопроса, где я сравниваю ответы разных групп. Я дошел до того, что заполнил содержание слайдов данными из Excel, но застрял в том, чтобы диаграммы выбирали их данные. Поэтому я поместил все данные, необходимые для каждой диаграммы, в одну строку, мне просто нужно было выбрать данные вручную для каждой серии данных, и это сэкономило бы часы, чтобы знать, как это сделать автоматически. Я сталкивался с методом SetSourceData, но не могу заставить его работать. Даже не упоминая, что у меня есть разные ряды данных для графика.

Я был бы очень признателен за вашу помощь, вы все:)

Также найдите код, с которым я работал до сих пор:

Sub CreateSlides()
'Open the Excel workbook. Change the filename here.
Dim OWB As New Excel.Workbook
Set OWB = Excel.Application.Workbooks.Open("C:\Users\jonas\Desktop\My Cloud Offline-Dateien\MC Documents\Uni\Bachelorarbeit\Workshop mit Case Study\Auswertung\191104_Auswertung Workshop Survey_v0.3.xlsb")
'Grab the first Worksheet in the Workbook
Dim WS As Excel.Worksheet
Set WS = OWB.Worksheets(1)
'Loop through each used row in Column A
For i = 1 To WS.Range("A65536").End(xlUp).Row
    'Copy the first slide and paste at the end of the presentation
    'ActivePresentation.Slides(1).Copy
    'ActivePresentation.Slides.Paste (ActivePresentation.Slides.Count + 1)

    'Change the text of the first text box on the slide.
    'M1
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(43).TextFrame.TextRange.Text = WS.Cells(i, 1).Value
    'Fragetext
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(4).TextFrame.TextRange.Text = WS.Cells(i, 2).Value

    'Testgruppe: n
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(8).TextFrame.TextRange.Text = "n = " & WS.Cells(i, 24).Value
    'Testgruppe: µ
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(9).TextFrame.TextRange.Text = "µ = " & WS.Cells(i, 3).Value
    'Testgruppe: sigma ChrW(963)
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(10).TextFrame.TextRange.Text = ChrW(963) & " = " & WS.Cells(i, 9).Value
    'Testgruppe: d vs Kontroll
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(12).TextFrame.TextRange.Text = "d = " & WS.Cells(i, 12).Value
    'Testgruppe Effekt vs Kontroll
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(13).TextFrame.TextRange.Text = WS.Cells(i, 13).Value
    'Testgruppe d vs Experten
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(15).TextFrame.TextRange.Text = "d = " & WS.Cells(i, 14).Value
    'Testgruppe Effekt vs Experten
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(16).TextFrame.TextRange.Text = WS.Cells(i, 15).Value

    'Kontrollgruppe: n
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(19).TextFrame.TextRange.Text = "n = " & WS.Cells(i, 25).Value
    'Kontrollgruppe: µ
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(20).TextFrame.TextRange.Text = "µ = " & WS.Cells(i, 4).Value
    'Testgruppe: sigma ChrW(963)
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(21).TextFrame.TextRange.Text = ChrW(963) & " = " & WS.Cells(i, 10).Value
    'Testgruppe: d vs Test
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(23).TextFrame.TextRange.Text = "d = " & WS.Cells(i, 18).Value
    'Testgruppe Effekt vs Kontroll
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(24).TextFrame.TextRange.Text = WS.Cells(i, 19).Value
    'Testgruppe d vs Experten
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(26).TextFrame.TextRange.Text = "d = " & WS.Cells(i, 16).Value
    'Testgruppe Effekt vs Experten
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(27).TextFrame.TextRange.Text = WS.Cells(i, 17).Value

    'Experten: n
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(30).TextFrame.TextRange.Text = "n = " & WS.Cells(i, 26).Value
    'Expertengruppe: µ
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(31).TextFrame.TextRange.Text = "µ = " & WS.Cells(i, 5).Value
    'Testgruppe: sigma ChrW(963)
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(32).TextFrame.TextRange.Text = ChrW(963) & " = " & WS.Cells(i, 11).Value
    'Testgruppe: d vs Test
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(34).TextFrame.TextRange.Text = "d = " & WS.Cells(i, 20).Value
    'Testgruppe Effekt vs Kontroll
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(35).TextFrame.TextRange.Text = WS.Cells(i, 21).Value
    'Testgruppe d vs Experten
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(37).TextFrame.TextRange.Text = "d = " & WS.Cells(i, 22).Value
    'Testgruppe Effekt vs Experten
    ActivePresentation.Slides(ActivePresentation.Slides.Count).Shapes(38).TextFrame.TextRange.Text = WS.Cells(i, 23).Value
Next
End Sub
...