Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Schleife - geht das auch einfacher?
10.06.2021 09:57:10 Chiakiiy
NotSolved
10.06.2021 11:05:44 Werner
*****
Solved

Ansicht des Beitrags:
Von:
Chiakiiy
Datum:
10.06.2021 09:57:10
Views:
976
Rating: Antwort:
  Ja
Thema:
VBA Schleife - geht das auch einfacher?

Hallo zusammen, 

ich hab hier einen code der automatisch mit Daten aus einem Excel PPT erzeugt und wollte fragen ob das auch einfacher geht anstatt so viele schleifen machen zu müssen.

Hierbei gehts darum das er Daten aus dem Feld "text1" + die passende schriftgröße "size1" auslesen und einfügen soll.

Das geht hoch insgesammt bis text40 und size40 - kann man das irgendwie einfacher machen anstatt 40 Schleifen?

BTW: sind die Texte nicht alle auf der gleicher PPT slide. bspw sind die ersten 10 texte auf slide 2, die nächsten 10 auf slide 3 usw.

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Sub sheet1()
 
Dim pptPres As Presentation     'Die PowerPoint-Präsentation
Dim strPfad As String           'Speicherpfad und Ort der Vorlage
Dim strPPTX As String           'Name der Vorlage
Dim pptApp As Object
 
    strPfad = "C:\Users\DE116832\Desktop\"
    strPPTX = "test.pptx"
    pptVorLage = strPfad & strPPTX
     
     
     
    Set pptApp = New PowerPoint.Application
     
    pptApp.Presentations.Open Filename:=pptVorLage, untitled:=msoTrue
     
    Set pptPres = pptApp.ActivePresentation
     
    pptPres.Slides(1).Select
     
 
  With pptPres.Slides(2).Shapes("text1").TextFrame.TextRange
        
    Call Range("text1").Copy
    Call .Paste
     
    If Range("text1").Font.Size Then
      .Font.Size = Range("size1")
   End If
       
  End With
   
  With pptPres.Slides(2).Shapes("text2").TextFrame.TextRange
        
    Call Range("text2").Copy
    Call .Paste
     
    If Range("text2").Font.Size Then
      .Font.Size = Range("size2")
   End If
     
  End With
 
     
       
    pptPres.SaveAs strPfad & Range("text1") & ".pptx"
     
    pptPres.Close
    pptApp.Quit
     
    Set pptPres = Nothing
    Set pptApp = Nothing
 
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Schleife - geht das auch einfacher?
10.06.2021 09:57:10 Chiakiiy
NotSolved
10.06.2021 11:05:44 Werner
*****
Solved