Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1696to1700
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
VBA: OptionButton (With/If/Case)
19.06.2019 05:11:00
Charly
Hallo Forum,
ich habe ein Problem mit OptionButton.
Mappe(1) mit UF:
OptionButtonen
ComboBox(RowSource hinterlegt)
TextBoxen, nur zur Darstellung von Inhalten, keine Schreiben
CommandButto´s
Mappe(3) ist eine Vorlage, für die TextBox/Inhalt
Wenn Ich in Mappe(1) per Button(1) meine UF Öffne u. per ComboBox einen Wert wähle werden daraufhin mehrere Mappen geöffnet u. die UF ließt festgelegte Werte aus den Mappen in die TextBoxen.
Dann wird per Button2 eine weitere Mappe(3) geöffnet "die Vorlage", alle Inhalte der TextBoxen werden hier zusammengefast u. in dafür vorgesehene Zellen eingetragen.
Über Button3 wird gespeichert Pfad u. Name der Datei sind im Code des Button3 hinterlegt.
Mein Problem,
Ich möchte über OptionButton´s eine Art vorauswall des Speicherpfades festlegen.
OB1 = Ordner(Gruppe1) in diesem sind OB3 = Ordner(1), OB4 = Ordner(2), OB5 = Ordner(3)
OB2 = Ordner(Gruppe2) in diesem sind OB3 = Ordner(1), OB4 = Ordner(2), OB5 = Ordner(3)
Meine alten Codezeilen ohne OptionButton funktioniert, habe Ich aus dem Forum u. etwas Angepasst mit With u. If Schleife
http://www.office-loesung.de/ftopic500064_0_0_asc.php
Mit den OptionButton kommt jetzt eine Fehlermeldung:
Fehler beim Kompilieren
Anweisungen und Zeilenmarken zwischen Select Case und erstem Vorkommen von Case unzulässig.
Wie od. was muss Ich am Code ändern um mein Vorhaben umzusetzen.
Hier mein Code:

Private Sub CommandButton1_Click()
Dim Datei As String, Verzeichnis As String, SaveDummy As Variant, wkb As Workbook
'Mappe ist bereits per UF geöffnet worden
Workbooks("Mappe(3).xlsx").Sheets("Tabelle1").Activate
Range("A1").Select
With Speichern
If Me.OptionButton1 = True Then
Select Case Me.OptionButton1
If Me.OptionButton1 = True Then
Select Case Me.OptionButton3
Verzeichnis = "P:\Gruppe1\1\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
End Select
ElseIf Me.OptionButton1 = True Then
Select Case Me.OptionButton4
Verzeichnis = "P:\Gruppe1\2\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
End Select
ElseIf Me.OptionButton1 = True Then
Select Case Me.OptionButton5
Verzeichnis = "P:\Gruppe1\3\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
End Select
Else
MsgBox "Wählen Sie eine Option (Ordner)!"
End If
End Select
ElseIf Me.OptionButton2 = True Then
Select Case Me.OptionButton2
If Me.OptionButton2 = True Then
Select Case Me.OptionButton3
Verzeichnis = "P:\Gruppe2\1\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
End Select
ElseIf Me.OptionButton2 = True Then
Select Case Me.OptionButton4
Verzeichnis = "P:\Gruppe2\2\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
End Select
ElseIf Me.OptionButton2 = True Then
Select Case Me.OptionButton5
Verzeichnis = "P:\Gruppe2\3\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
End Select
Else
MsgBox "Wählen Sie eine Option (Ordner)!"
End If
End Select
Else
MsgBox "Wählen Sie eine Option (Grund)!"
End If
End With
For Each wkb In Workbooks
If (wkb.Name  ActiveWorkbook.Name) And (wkb.Name  ThisWorkbook.Name) Then
Application.DisplayAlerts = False
wkb.Close savechanges:=False
Application.DisplayAlerts = True
End If
Next wkb
End Sub
Function SpeichernUnter(VorgabeName As String) As Variant
SpeichernUnter = Application.GetSaveAsFilename(InitialFileName:=VorgabeName, _
Filefilter:=" _Excel Dateien (*.xlsx),*.xls*", _
FilterIndex:=1, Title:="Speichern unter...", ButtonText:="speichern")
End Function

Gruß Charly

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: OptionButton (With/If/Case)
19.06.2019 06:09:24
Werner
Hallo Charly,
ein OptionButton kennt ja nur die Zustände True/False, da macht ein Select Case meiner Meinung nach keinen Sinn.
Private Sub CommandButton1_Click()
Dim Datei As String, Verzeichnis As String, SaveDummy As Variant, wkb As Workbook
'Mappe ist bereits per UF geöffnet worden
Workbooks("Mappe(3).xlsx").Sheets("Tabelle1").Activate
Range("A1").Select
With Speichern
If Me.OptionButton1 Then
If Me.OptionButton3 Then
Verzeichnis = "P:\Gruppe1\1\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
ElseIf Me.OptionButton4 Then
Verzeichnis = "P:\Gruppe1\2\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
ElseIf Me.OptionButton5 Then
Verzeichnis = "P:\Gruppe1\3\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
Else
MsgBox "Wählen Sie eine Option (Ordner)!"
End If
ElseIf Me.OptionButton2 Then
If Me.OptionButton3 Then
Verzeichnis = "P:\Gruppe2\1\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
ElseIf Me.OptionButton4 Then
Verzeichnis = "P:\Gruppe2\2\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
ElseIf Me.OptionButton5 Then
Verzeichnis = "P:\Gruppe2\3\"
Datei = TB_Dateiname.Value & ".xlsx"
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy
Range("A1").Select
Workbooks("Mappe(1).xlsm").Sheets("Tabelle1").Activate
Else
MsgBox "Wählen Sie eine Option (Ordner)!"
End If
Else
MsgBox "Wählen Sie eine Option (Grund)!"
End If
End With
For Each wkb In Workbooks
If (wkb.Name  ActiveWorkbook.Name) And (wkb.Name  ThisWorkbook.Name) Then
wkb.Close savechanges:=False
End If
Next wkb
End Sub
Keine Ahnung was "Speichern" (With Speichern) ist. Die Variable ist nirgendwo deklariert.
Zudem würde ich mal meinen, dass die ständige Aktiviererei der Workbooks unnötig ist.
Gruß Werner
Anzeige
AW: VBA: OptionButton (With/If/Case)
19.06.2019 06:48:16
Charly
Morgen Werner,
sorry für die Verwirrung, wenn das with "Speichern" nicht sein muss kann dann auch natürlich weg. dachte das Ich so die if schlife beginne.
Um auf das Aktivieren zu kommen, diese Zeilen habe Ich eingefügt um immer auf der ersten Mappe zurück zu kehren. Deklariere Ich die Mappe nicht als aktive so bleibt bei mir die UF immer bei der letzten Mappe stehen die Ich vorher per UF aufgerufen habe.
Gruß Charly
AW: VBA: OptionButton (With/If/Case)
19.06.2019 06:57:48
Hajo_Zi
Hallo Charly,
es gibt keine Zeile die mit "." beginnt, warum dann With?
frage jemand der neben Dir sitzt der sieht die Datei.
Die meisten hier sehen Sie nicht.
Da Sie nicht auf Deinen Rechner schauen.
Vielleicht sollte die Datei verlinkt werden?
Benutze hier im Forum die Funktion zum hochladen. Falls Du die nicht benutzen möchtest beachte, von unsicheren Servern wie z.B. www.file-upload.net lade ich keine Datei runter. (lt. Einschätzung meines Virenprogramms)

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
Anzeige
AW: VBA: OptionButton (With/If/Case)
19.06.2019 08:03:47
Charly
Morgen Hajo_Zi,
das mit dem with hat sich erledigt...
Dieser Code ist Teil einer UserForm in meiner Hauptmappe, zu denen sich noch weiter 8 neben Mappen dazu gesellen.
Sozusagen ein Projekt an dem Ich schon länger dran Bastle.
Gruß Charly
AW: VBA: OptionButton (With/If/Case)Close
20.06.2019 00:07:48
Charly
Geschlossen.

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige