Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Mehrere Comboboxen nacheinander an Makro übergeben | Herbers Excel-Forum


Betrifft: Mehrere Comboboxen nacheinander an Makro übergeben von: MM
Geschrieben am: 11.12.2009 09:28:48

Hallo Zusammen,

Ich habe ein Userform mit 8 Comboboxen in dem Ich 8 verschieden Sheets eines Workbooks auswählen kann.

Die ausgewählten sheets will ich nacheinander an ein Makro übergeben, das er die Nacheinander abarbeitet.
zum Beispiel so:

Sub control()

Sheets(f_excel_interference.c_lip1.Value).Select

If Left$(Cells(5, 2).Value, 3) = "low" Then

MsgBox ("You have choosen the wrong Template")
Tcheck = False
Exit Sub
Else
Tcheck = True
End If

End Sub
Ich habe jetzt 8 Comboboxen die heißen c_Lip1 bis c_lip8.
Wie schaffe ich es jetzt ,das ich nacheinander die jeweilige Combobox hierein gekomme?
Sheets(f_excel_interference.c_lip1.Value).Select

Vielen Dank im vorraus.

gruß
MM

  

Betrifft: AW: Mehrere Comboboxen nacheinander an Makro übergeben von: {Boris}
Geschrieben am: 11.12.2009 09:41:44

Hi MM,

ungestestet

Dim x As Long
With f_excel_interference
  For x = 1 to 8
    Sheets(.Controls("c_lip" & x).Value).Select
  Next x
End With
Grüße Boris


  

Betrifft: AW: Mehrere Comboboxen nacheinander an Makro übergeben von: fcs
Geschrieben am: 11.12.2009 10:01:41

Hallo MM,

eine entsprechende Prüfung für alle 8 Boxen schaut dann etwa so aus:

Sub control()
  Dim objControl As control, intI As Long, wks As Worksheet
  For intI = 1 To 2
    Set objControl = f_excel_interference.Controls("c_lip" & Format(intI, "0"))
    If objControl.Object.ListIndex = -1 Then
      MsgBox "Bitte in Combobox " & intI & " erst ein Template auswählen!"
      Tcheck = False
      Exit Sub
    Else
      Set wks = Worksheets(objControl.Object.Value)
      
      If Left$(wks.Cells(5, 2).Value, 3) = "low" Then
        MsgBox ("You have choosen the wrong Template in Combobox " & intI)
        Tcheck = False
        Exit Sub
      Else
        Tcheck = True
      End If
    End If
  Next intI

End Sub

Gruß
Franz


  

Betrifft: AW: Mehrere Comboboxen nacheinander an Makro übergeben von: Renee
Geschrieben am: 11.12.2009 10:08:46

Mazwara MM,

uiuiui, da sehe ich schwarz ;-)

- Geschützte Namen (Control) für Subs verwenden
- Controls umbennen
- Select einsetzen
- Leere Zellen nicht prüfen
- Variablen nicht deklarieren (Tcheck)
- 1 Variable für 8 Durchgänge (ebenfalls Tcheck) ???

Aber vielleicht:

Sub ControlIt()
    Dim objCtrl As Object
    For Each objCtrl In f_excel_interference.Controls
        If Left(objCtrl.Name, 3) = "lip" And _
            VarType(objCtrl) = 8 Then
            With Worksheets(objCtrl.Value)
                If IsEmpty(.Cells(5, 2)) Then
                    MsgBox "something completely wrong!"
                ElseIf Left(.Cells(5, 2).Value, 3) = "low" Then
                    MsgBox ("You have choosen the wrong Template")
                    Tcheck = False
                    Else
                    Tcheck = True
                End If
            End With
        End If
    Next
End Sub
Rennée lässt grüssen


  

Betrifft: welcome back owT von: Rudi Maintaire
Geschrieben am: 11.12.2009 10:33:01




  

Betrifft: AW: Mehrere Comboboxen nacheinander an Makro übergeben von: MM
Geschrieben am: 11.12.2009 10:21:39

Hallo Zusammen

Erstmal danke für die Antworten.

Jedoch ist die eigentliche Aufgabe nicht die Prüfung des Template/sheets, sondern nur der erste Schritt eine viel längeren Makros. (War wohl etwas mißverständlich ausgedrückt, wollte nur nicht den ganzen Code reinkopieren)

Also es geht darum, das ich die Sheets aus den 8 verschiedenen Comboboxen nacheinandern durch das Makro abarbeiten lassen will.
Ich muss es also irgendwie hin bekommen, dass der Name der Combobox von hier:

Sheets(f_excel_interference.c_lip1.Value).Select

mit dem Wert der nächsten Combobox ersetzt wird.

und das Makro erneut durchläuft.

Dummy alternative ist, ich kopiere das Makro 8x untereinder mit jeweils eigenem Sheetnamen.Also:

Sheets(f_excel_interference.c_lip1.Value).Select
Makro

Sheets(f_excel_interference.c_lip2.Value).Select
Makro

Sheets(f_excel_interference.c_lip3.Value).Select
Makro


Ich hoffe ich habe mich jetzt klarer ausgedrückt


  

Betrifft: AW: Mehrere Comboboxen nacheinander an Makro übergeben von: Renee
Geschrieben am: 11.12.2009 10:40:52

Hi MM,

Wenn du die Vorschläge nicht interpretieren und/oder ausprobieren kannst, dann bleib lieber bei deiner
Dummy alternative und schreib alles untereinander.

Renée lässt grüssen


  

Betrifft: AW: Mehrere Comboboxen nacheinander an Makro übergeben von: MM
Geschrieben am: 11.12.2009 10:44:42

Wenn du die Vorschläge nicht interpretieren und/oder ausprobieren kannst, dann bleib lieber bei  _
deiner 
Dummy alternative und schreib alles untereinander
Scheint so, Trotzdem danke


  

Betrifft: OT: Na, hat dieses Mal ganz schön gedauert,... von: Luc:-?
Geschrieben am: 11.12.2009 11:46:41

...Renee!
Einer wartet schon seit Wochen sehnsüchtig! Viele Neue hier wdn dich gar nicht kennen, aber wir Alten schon... Welcome!
Gruß Luc :-?
PS: Bist du wieder in der CH oder hast du jetzt eine Möglichkeit von zuhause aus?


  

Betrifft: AW: OT: was ist schon Zeit ? von: Renee
Geschrieben am: 11.12.2009 11:50:42

Hi Luc,

Wieder in CH, für ein paar Wochen. Nix von daheim ;-)
Gedauert hat's weil noch ein Umweg über Kopenhagen nötig war ;-)

Wer soll den schon auf mich warten ??

Renée


  

Betrifft: Einer, dem du vor 2 Jahren mal deine... von: Luc:-?
Geschrieben am: 11.12.2009 12:00:58

...Mail-Adresse gegeben hast, dann nichts mehr mitgekriegt hat und im September höchst verwundert war, dich nicht zu erreichen...
Er fand, du würdest auf der gleichen „VBA-Wellenlänge“ mit ihm liegen... ;-)
schöWE Renée, aber wir lesen uns sicher noch... Luc :-?


  

Betrifft: OT@Renée : Kopenhagen ? - Bist Du OBAMA ;-) ? von: NoNet
Geschrieben am: 11.12.2009 12:35:33

Moin Renée,

welcome back for a while...

Apropos "Kopenhagen" : Du warst nicht zufällig bei Obamas Preisverleihung dabei oder bis evtl. sogar der/die verkappte OBAMA ;-)) ?

Salut in die Alpenrepublik, NoNet


  

Betrifft: Ohhh Sh*t - Oslo mit Kopenhagen verwechselt von: NoNet
Geschrieben am: 11.12.2009 12:39:03

...kaum hatte ich das abgesendet, da fiel es mir wie Zellen aus den Mappen :

Obama möchte zwar nach Kopenhagen kommen (zum Abschluss der "Klimakonferenz"), seinen Preis hat er natürlich - wie das Usus ist - in Oslo im Empfang genommen....

Mist - könnte ich meinen beitrag oben doch nur selbst wieder löschen... ;-)

NoNet


  

Betrifft: OT: eben! von: Rudi Maintaire
Geschrieben am: 11.12.2009 13:28:54


Zeit spielt keine Rolle. Das einzige, das zählt, ist das Leben.


  

Betrifft: ...und das kostet Zeit (u.m.)! Gruß owT von: Luc:-?
Geschrieben am: 12.12.2009 04:13:22

:-?


Beiträge aus den Excel-Beispielen zum Thema "Mehrere Comboboxen nacheinander an Makro übergeben"