Erweiterung einer Tabelle in Powerpoint

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Frame
Bild

Betrifft: Erweiterung einer Tabelle in Powerpoint
von: Jonas Z
Geschrieben am: 23.04.2015 12:51:50

Hallo Leute ich arbeite noch nicht lange mit VBA und kenne mich deswegen noch nicht so aus .
Ich suche etwas das meine Tabelle in Powerpoint um eine Zeile vergrößert,wenn ich dementsprechen viele Werte haben. Bisher versuche ich es damit:
While Cells(Zeile, 1) (ungleich*) ""

If TabellenZeile (größer*) 21 Then
MSppt.ActivePresentation.Slides(ppt_slide).Shapes("Group 155").Table.Rows.Add _
(MSppt.ActivePresentation.Slides(ppt_slide).Shapes("Group 155").Table.Rows(1))

End If
If Cells(Zeile, 12) = "Sonstige" Then
If Len(Cells(Zeile, 3).Text) (größer*) 83 Then
Shorttitle = Left(Cells(Zeile, 3).Text, 83)
Else: Shorttitle = Cells(Zeile, 3).Text
End If
With MSppt.ActivePresentation.Slides(ppt_slide)
.Shapes("Group 155").Table.Cell(TabellenZeile, 1).Shape.TextFrame.TextRange.Text = Replace(Cells(Zeile, 1).Text, Chr(10), Chr(13))
.Shapes("Group 155").Table.Cell(TabellenZeile, 2).Shape.TextFrame.TextRange.Text = Replace(Cells(Zeile, 2).Text, Chr(10), Chr(13))
.Shapes("Group 155").Table.Cell(TabellenZeile, 3).Shape.TextFrame.TextRange.Text = Replace(Shorttitle, Chr(10), Chr(13))
.Shapes("Group 155").Table.Cell(TabellenZeile, 4).Shape.TextFrame.TextRange.Text = Replace(Cells(Zeile, 4).Text, Chr(10), Chr(13))
.Shapes("Group 155").Table.Cell(TabellenZeile, 5).Shape.TextFrame.TextRange.Text = Replace(Cells(Zeile, 5).Text, Chr(10), Chr(13))
.Shapes("Group 155").Table.Cell(TabellenZeile, 6).Shape.TextFrame.TextRange.Text = Replace(Cells(Zeile, 6).Text, Chr(10), Chr(13))
End With


TabellenZeile = TabellenZeile + 1

End If

Zeile = Zeile + 1
Wend

Bekomme dann aber einen Laufzeitfehler '13' angezeigt. Die Übertragung der Daten in die PowerPoint Folie läuft optimal nur die Erweiterung der Tabelle funktioniert dann leider nicht.
Vielen Dank für eure Hilfe
(*damit es zu keinen Formatierungsproblemen kommt)

Bild

Betrifft: AW: Erweiterung einer Tabelle in Powerpoint
von: fcs
Geschrieben am: 23.04.2015 14:41:37
Hallo Jonas,
zum Einfügen von zusätzlichen Zeilen müsste es etwa wie folgt aussehen.
Hilfreich ist hier, für das Tabellen-Objekt in PowerPoint eine entsprechende Variable zu deklarieren.
Die Reihenfolge der If-Prüfungen musst du nochmals genau prüfen.
Gruß
Franz
P.S: Wenn du hier Makro-Code posten willst, dann verwnde die Code-Schaltfläche und füge den Code zwischen den Steuerzeichen ein.

  Dim pptTable As Object ' PowerPoint.Table
  
  Set pptTable = MSppt.ActivePresentation.Slides(ppt_slide).Shapes("Group 155").Table
  While Cells(Zeile, 1) <> ""
  
    If Cells(Zeile, 12) = "Sonstige" Then
          'Dies Prüfung gehört nach meinem Verständnis nach der Prüfung auf "Sonstige" in  _
Spalte L
          If TabellenZeile > 21 Then
              'Zeile am Ende der PowerPoint-Tabelle anfügen
              pptTable.Rows.Add
          End If
      If Len(Cells(Zeile, 3).Text) > 83 Then
        Shorttitle = Left(Cells(Zeile, 3).Text, 83)
      Else
        Shorttitle = Cells(Zeile, 3).Text
      End If
      With pptTable 'PowerPoint-Tabelle mit Daten füllen
          .Cell(TabellenZeile, 1).Shape.TextFrame.TextRange.Text _
              = Replace(Cells(Zeile, 1).Text, Chr(10), Chr(13))
          .Cell(TabellenZeile, 2).Shape.TextFrame.TextRange.Text _
              = Replace(Cells(Zeile, 2).Text, Chr(10), Chr(13))
          .Cell(TabellenZeile, 3).Shape.TextFrame.TextRange.Text _
              = Replace(Shorttitle, Chr(10), Chr(13))
          .Cell(TabellenZeile, 4).Shape.TextFrame.TextRange.Text _
              = Replace(Cells(Zeile, 4).Text, Chr(10), Chr(13))
          .Cell(TabellenZeile, 5).Shape.TextFrame.TextRange.Text _
              = Replace(Cells(Zeile, 5).Text, Chr(10), Chr(13))
          .Cell(TabellenZeile, 6).Shape.TextFrame.TextRange.Text _
              = Replace(Cells(Zeile, 6).Text, Chr(10), Chr(13))
      End With
      
      TabellenZeile = TabellenZeile + 1
      
    End If
    
    Zeile = Zeile + 1
  Wend


Bild

Betrifft: AW: Erweiterung einer Tabelle in Powerpoint
von: Jonas Z
Geschrieben am: 23.04.2015 16:27:45
Super Vielen Dank funktioniert einwandfrei :)
Die Reihenfolge der If-Prüfungen passt auch so!!

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Erweiterung einer Tabelle in Powerpoint"