Anzeige
Archiv - Navigation
1832to1836
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

Tabellenblätter auswählen, Option Button

Tabellenblätter auswählen, Option Button
23.05.2021 00:44:42
Bastian
Hallo zusammen!
Hab mal wieder ein Problem mit VBA und hoffe Ihr könnt mir wieder helfen.
Ich habe eine Datei mit 12 Tabellenblätter : Januar, Februar, März, ...
Ich möchte per UserForm und darin 12x OptionButton (Januar, Februar, März,...) auswählen welche Tabellenblätter ich dann als PDF speichern kann.
Hatte jemand eine Ansatz weil ich leider immer noch keinen habe.
Danke schon mal

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblätter auswählen, Option Button
23.05.2021 01:00:20
Bastian
Sorry meinte CheckBox statt Option Buttons
AW: Tabellenblätter auswählen, Option Button
23.05.2021 01:17:40
ralf_b
Moin,
was verstehst du unter "Ansatz"?
AW: Tabellenblätter auswählen, Option Button
23.05.2021 01:22:03
Bastian
Hallo,
das ich den ganzen Abend überlege wie so ein Code aussehen könnte.
Habe in einem Tabellenblatt ("41") begonnen, wenn CheckBox True dann Zahl 1. Das würde ich dann für Januar bis Dezember so machen. Beginnend mit
A150 = Januar
A151 = Februar
A152 = März
wenn ich dann die CheckBox auf True setze sollte dann bei einem entsprechenden Makro, dass über eine Schaltfläche aktiviert wird, wissen welche Tabellenblätter ich als PDF speichern möchte bzw. zumindest ausdrucken soll.
Anzeige
AW: Tabellenblätter auswählen, Option Button
23.05.2021 01:36:36
Bastian
Ich meine damit:
zur AUswahl der Tabellenblätter verwende ich folgenden COde
A150 = 1 (1=ausdrucken) steht für Tabellenblatt Januar
A151 = 1 (1=ausdrucken) steht für Tabellenblatt Februar
A152 = 0 (0=nicht ausdrucken) steht für Tabellenblatt März
wenn ich Januar auswählen möchte dann :
If CheckBox1.Value = True Then
Worksheets("41").Range("A150") = "1"
Else
If CheckBox1.Value = False Then
Worksheets("41").Range("A150") = "0"
End If
wenn ich Februar auswählen möchte dann :
If CheckBox2.Value = True Then
Worksheets("41").Range("A151") = "1"
Else
If CheckBox2.Value = False Then
Worksheets("41").Range("A151") = "0"
End If
wenn ich Märzauswählen möchte dann :
If CheckBox3.Value = True Then
Worksheets("41").Range("A152") = "1"
Else
If CheckBox3.Value = False Then
Worksheets("41").Range("A152") = "0"
End If
wenn ich alles ausgewählt habe, möchte ich über eine Schaltfläche die festgelegten Tabellenblätter (in diesem Fall: Januar und Februar ausdrucken lassen.
Und für diesen Code weiss ich keinen Ansatz oder Lösung.
Danke für deine Mühen und Geduld.
Anzeige
AW: Tabellenblätter auswählen, Option Button
23.05.2021 05:02:29
Oberschlumpf
Hi Bastian
zeig doch bitte mal per Upload eine Excel-Bsp-Datei mit allem, was erforderlich ist, um dein Problem besser zu verstehen als nur mit einer Beschreibung.
Ciao
Thorsten
AW: Tabellenblätter auswählen, Option Button
23.05.2021 08:49:37
Werner
Hallo,
beispielsweise so (ohne den Umweg über einen Eintrag in einem Tabellenblatt):

Private Sub CommandButton1_Click()
Dim ctr As Control, arrBlätter() As String, i As Long
For Each ctr In Me.Controls
If TypeName(ctr) = "CheckBox" Then
If ctr Then
ReDim Preserve arrBlätter(i)
arrBlätter(i) = ctr.Caption
i = i + 1
End If
End If
Next ctr
Me.Hide
Sheets(arrBlätter).PrintPreview
Me.Show
End Sub
Für den tatsächlichen Ausdruck dann statt PrintPreview - PrintOut
Gruß Werner
Anzeige
AW: Tabellenblätter auswählen, Option Button
23.05.2021 08:53:54
Werner
Hallo,
und wenn du jedes ausgewählte Monatsblatt als eigene PDF-Datei abspeichern willst, dann so:

Private Sub CommandButton1_Click()
Dim ctr As Control, arrBlätter() As String, i As Long
For Each ctr In Me.Controls
If TypeName(ctr) = "CheckBox" Then
If ctr Then
ReDim Preserve arrBlätter(i)
arrBlätter(i) = ctr.Caption
i = i + 1
End If
End If
Next ctr
For i = 0 To UBound(arrBlätter)
With Sheets(arrBlätter(i))
'Speicherpfad anpassen
.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Ordner\Unterordner\" & .Name & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish:=False
End With
Next i
End Sub
Die blätter werden unter dem jeweiligen Monatsnamen abgespeichert.
Gruß Werner
Anzeige
AW: Tabellenblätter auswählen, Option Button
23.05.2021 14:00:22
Bastian
Guten Tag,
danke für die Tipps und Vorschläge. Werde mit der Umsetzung gleich starten.
AW: Tabellenblätter auswählen, Option Button
24.05.2021 18:56:28
Bastian
Hallo nochmal,
hab den Code getestet und er funktioniert leider nicht. Lade eine Vorlage mal rauf. Nicht alle CheckBoxn haben eine Makro-Funktion deshalb zeigt er mir einen Fehler an. Es sollen nur CheckBox1,CheckBox22,CheckBox3 dafür verwendet werden.
CheckBox1 = Januar
CheckBox22= Februar
CheckBox3 = März
https://www.herber.de/bbs/user/146342.xlsm
Danke nochmal.
AW: Tabellenblätter auswählen, Option Button
24.05.2021 22:23:18
ralf_b
du kannst noch eine if Bedingung einfügen

'entweder so, die andern checkboxen ausschliessen
If ctr.Caption  "Bearbeitet" then
'oder so ,den Monat gegenprüfen
If ctr.Caption = Format("1." & ctr.Caption & " " & Year(Date), "MMMM") Then

Anzeige
AW: Tabellenblätter auswählen, Option Button
25.05.2021 01:53:55
bastian.peter@t-online.de
Danke für den Tipp. Ich komme heute nicht mehr dazu aber werde ihn gleich morgen testen und dir mitteilen.
Danke
AW: Tabellenblätter auswählen, Option Button
26.05.2021 19:00:19
bastian.peter@t-online.de
Hallo.
Sorry dass ich mich erst jetzt melde. Habe heute getestet und umgesetzt. vielen Dank an euch für die tolle und schnelle HIlfe
Danke
Nachtrag: Tabellenblätter auswählen, Option Button
30.05.2021 11:24:54
bastian.peter@t-online.de
Hallo zusammen,
Brauchte erneut Hilfe für den schon bereits vorgefertigten Code eurerseits. Ich habe alles angepasst und funktioniert super. Danke hierfür.
Jetzt bräuchte ich die Option nach dem die Tabellenblätter anzeigt werden diese als PDF zu speichern. Meinen Code füge ich hinzu.
Wäre toll wenn mir jemand zeigen könnte warum die Datei nicht als PDF gespeichert wird.
On Error GoTo Fehlerbehandlung
Dim ctr As Control, arrBlätter() As String, i As Long 'der Code ist nicht von mir!
For Each ctr In Me.Controls
If TypeName(ctr) = "CheckBox" Then
If ctr Then
ReDim Preserve arrBlätter(i)
arrBlätter(i) = ctr.Caption
i = i + 1
End If
End If
Next ctr
Me.Hide
sheets(arrBlätter).PrintPreview
Me.Show
'hier folgt mein Code:
Dim strPfad As String, strname As String, strFilname As String
strPfad = "Y:\05\2021\" & Worksheets("41").Range("A102") \ ""
strname = Worksheets("41").Range("A100") & "_" & Date & ".pdf"
strFilename = strPfad & strname
strFilename = Application.GetSaveAsFilename(InitialFileName:=strFilename, FileFilter:="PDF files, *.pdf", Title:="PDF speichern")
If strFilename False Then
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFilename, _
Quality:=xlQualityStandard, IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish:=True
Else
Exit Sub
End If
Fehlerbehandlung:
Worksheets("41").Select
Range("D30").Select
ActiveWindow.SmallScroll Down:=-200
Dim wbk As Worksheet
For Each wbk In ActiveWorkbook.Worksheets
wbk.Protect ("123")
Next wbk
ActiveWorkbook.Protect Password:="1234"
Exit Sub
Wo liegt mein Fehler? Um Tipps und Hilfen wäre ich dankbar..
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige