Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1700to1704
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Optional mehrere Sheets auswählen

Optional mehrere Sheets auswählen
05.07.2019 11:57:08
Markus
Hallo zusammen,
ich habe mehrere Tabellenblätter, die ich je nach Situation kombiniert als pdf speichern möchte.
Hierfür habe ich in einer Tabelle CheckBoxen zur Auswahl der Tabellenblätter hinterlegt und folgenden Code gebastelt:
Sub pdfSpeichern()
Dim i As String
i = ""
If CheckBox21.Value = True Then
i = """A"""
End If
If CheckBox23.Value = True Then
i = i & "," & """B"""
End If
Sheets(Array(i)).Select
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:="Test", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
Sheets("Select").Select
End Sub
Wenn ich mir die Variable i über eine MsgBox ausgeben, so zeigt sie mir das Array genau so an wie wenn ich es händisch eintragen würde: "A", "B".
Leider erhalte ich jedoch einen Laufzeitfehler "Index außerhalb des gültigen Bereichs".
Weiß jemand, was ich hier falsch mache?
Vielen Dank vorab
Markus

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Optional mehrere Sheets auswählen
05.07.2019 12:19:18
Rudi
Hallo,
versuch's mal so:
Sub pdfSpeichern()
Dim i As String
i = ""
If CheckBox21.Value = True Then
i = "A"
End If
If CheckBox23.Value = True Then
i = i & "," & "B"
End If
Sheets(Split(i, ",")).Select
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:="Test", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
Sheets("Select").Select
End Sub

Gruß
Rudi
AW: Optional mehrere Sheets auswählen
05.07.2019 13:02:53
Markus
Hallo Rudi,
vielen Dank für die schnelle Rückmeldung.
So hat es jetzt funktioniert!
Danke und ein schönes Wochenende
Markus
Anzeige
AW: Optional mehrere Sheets auswählen
05.07.2019 12:35:59
Daniel
HI
das tut so nicht. die Darstellung des Arrays ist ja Programmcode.
was du aber erzeugst, ist einfacher Text und es ist nicht so ohne weiteres möglich, normalen Text in ausführbaren Programmcode zu wandeln.
ich würde hier ausnutzen, dass du beim Sheets().Select noch über den Parameter FALSE mit angeben kannst, dass du eine Gruppenselektion haben willst und das aktuell selekierte Blatt zur bestehenden Selektions-Gruppe hinhzugefügt werden soll.
dim i as boolean
i = True
If CheckBox21.Value = True Then
Sheets("A").Select i
i = False
End If
If CheckBox23.Value = True Then
Sheets("A").Select i
i = False
End If
Gruß Daniel
Anzeige
AW: Optional mehrere Sheets auswählen
05.07.2019 12:38:14
Marco
Hallo Markus,
ich habe noch einen weiteren Lösungsansatz.
In diesem Fall arbeite ich mit Index - das kannst Du ja bei Bedarf auch in Namen ändern.
Ich setze die Auswahl direkt in der if-then-Abfrage fest.
Viele Grüße
Marco
Sub pdfSpeichern()
If CheckBox21.Value = True And CheckBox23.Value = True Then
Sheets(Array(1, 2)).Select
ElseIf CheckBox21.Value = True And CheckBox23.Value = False Then
Sheets(1).Select
ElseIf CheckBox21.Value = False And CheckBox23.Value = True Then
Sheets(2).Select
Else
MsgBox "Bitte wählen, welche Seiten exportiert werden sollen!"
End If
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:="Test", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
Sheets("Select").Select
End Sub

Anzeige
AW: Optional mehrere Sheets auswählen
05.07.2019 12:52:06
Marco
Hi Markus,
ich habe gerade noch einen Code-Schnippsel gefunden, der Dir evtl. auch noch bei einem Lösungsansatz helfen könnte. :-)
VG
Marco
Dim AuswahlSheets(0 To 1) As String
AuswahlSheets(0) = "A"
AuswahlSheets(1) = "B"
Sheets(AuswahlSheets).Select
AW: Optional mehrere Sheets auswählen
05.07.2019 13:03:51
Markus
Hallo Marco,
danke für die Rückmeldung!
Ich habe das Problem mit Rudis Hilfe lösen können, schaue mir deinen Vorschlag aber dennoch auch mal an.
Danke und ein schönes Wochenende,
Markus

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige