Ich bin neu hier mit etwas, das mich wochenlang verblüfft hat.
Ich habe ein Makro, das Excel-Bereiche von einem Blatt auf eine vorbereitete PowerPoint-Folie kopiert. Dies geschieht mit einem Array wie dem folgenden:
SlideArr = Array(1, 2, 3)
RangeArr = Array(Output.Range("A1:B1"), Output.Range("A2:B2"), _
Output.Range("A3:B3"))
For x = LBound(SlideArr) To UBound(SlideArr)
RangeArr(x).Copy
Set shp = MyPresentation.Slides(SlideArr(x)).Shapes.PasteSpecial(DataType:=2)
Kopieren Sie nun 3 Sätze von Bereichen in 3 verschiedene Folien. Meine Frage ist, ob es möglich ist, ein Makro zu codieren, das die 2. Folie (Array 2) überspringt, sodass es nur auf den Folien 1 und 3 eingefügt wird.
if
in diesem Fall eine verwenden? Kann ich einfach etwas tun wie: If Array(2) Continue for Array(3) End If
Nicht sehr vertraut mit Arrays zu arbeiten, da es mein erstes Mal ist. Es war ein Glücksfall im Vergleich zu meiner vorherigen Methode, für jeden Bereich einen Code zum Kopieren und Einfügen zu erstellen.
Continue for
oder überprüfen Sie, ob Sie sich auf Folie eins oder drei befinden, und führen Sie Ihre Logik aus. Um eine bedingte Prüfung durchzuführen, verwenden SieIf
.