27.05.2024, 17:25 (Dieser Beitrag wurde zuletzt bearbeitet: 27.05.2024, 17:25 von juschimitsu.)
Hallo Leute,
ich versuche grad über Dropdown Auswahl ein Makro auszuüben, wo ich von Euch Versierten Hilfe benötige.
Habe es wie hier empfohlen über Makroaufzeichnung gemacht, aber es tut sich nicht, wenn ich über Dropdown was verändere.
Bevor ich Euch wieder missverstehe ob es als Modul oder Private Sub erstellt werden soll, hier noch paar Hinweise. Dieses Makro ist in meine Arbeitsmappe nur in Tabellenblatt3 gedacht.
Bitte zur Kenntnis, bin absoluter VBA Laie, seit gnädig.
in Excel ist es möglich, ein Dropdown-Menü zu erstellen, das verschiedene Makros ausführt. Dies erfordert die Kombination von Formularsteuerelementen (wie z. B. einem Dropdown-Menü) und VBA (Visual Basic for Applications). Hier ist eine Schritt-für-Schritt-Anleitung, wie du das machen kannst:
1. **Erstellen des Dropdown-Menüs**: - Gehe auf das **Entwicklertools**-Tab. Wenn das Tab nicht sichtbar ist, aktiviere es über **Datei > Optionen > Menüband anpassen** und setze das Häkchen bei **Entwicklertools**. - Klicke auf **Einfügen** und wähle unter **Formularsteuerelemente** das Dropdown-Menü (Kombinationsfeld) aus. - Zeichne das Dropdown-Menü auf dem Arbeitsblatt.
2. **Dropdown-Menü konfigurieren**: - Rechtsklicke auf das Dropdown-Menü und wähle **Steuerelement formatieren**. - Unter dem Tab **Steuerung** gib die Zellverknüpfung und die Eingabebereich ein. Zum Beispiel könntest du den Eingabebereich auf eine Liste mit Makronamen setzen (z. B. A1:A5), und die Zellverknüpfung auf eine Zelle, die den ausgewählten Index speichert (z. B. B1).
3. **Makros erstellen**: - Öffne den VBA-Editor mit **Alt + F11**. - Füge ein neues Modul hinzu mit **Einfügen > Modul**. - Schreibe die Makros, die du ausführen möchtest. Zum Beispiel: ```vba Sub Makro1() MsgBox "Makro 1 ausgeführt" End Sub
Sub Makro2() MsgBox "Makro 2 ausgeführt" End Sub
Sub Makro3() MsgBox "Makro 3 ausgeführt" End Sub ```
4. **Makro für das Dropdown-Menü erstellen**: - Erstelle ein weiteres Makro, das basierend auf der Auswahl im Dropdown-Menü das entsprechende Makro ausführt: ```vba Sub DropdownAuswahl() Dim Auswahl As Integer Auswahl = Range("K2").Value ' Annahme: K2 ist die Zellverknüpfung
Select Case Auswahl Case 1 Call Makro1 Case 2 Call Makro2 Case 3 Call Makro3 ' Füge weitere Cases für zusätzliche Makros hinzu Case Else MsgBox "Ungültige Auswahl" End Select End Sub ```
5. **Makro mit dem Dropdown-Menü verknüpfen**: - Gehe zurück zum Excel-Arbeitsblatt und rechtsklicke auf das Dropdown-Menü. - Wähle **Makro zuweisen** und verknüpfe es mit dem Makro `DropdownAuswahl`.
Jetzt sollte dein Dropdown-Menü in der Lage sein, verschiedene Makros basierend auf der Auswahl auszuführen. Wenn du eine Auswahl im Dropdown-Menü triffst, wird das entsprechende Makro ausgeführt.
Grüße
J.K.H.
Folgende(r) 1 Nutzer sagt Danke an J.K.H. für diesen Beitrag:1 Nutzer sagt Danke an J.K.H. für diesen Beitrag 28 • juschimitsu
nach dank J.K.H. Anleitung alles hingekriegt, aber nur weil man in Kombinationsfeld (Formularsteuerelemente) die Schriftgröße nicht ändern bzw. beeinflussen kann, wird die Aktion gekenzelt.
Das soll in ActiveX-Steuerelemente möglich sein, aber da ist die Erstellung vom Kombinationsfeld komplett anders als im (Formularsteuerelemente), kriege es nicht hin.
und wieder zeigst du - nur - Bilder und keine Excel-Bsp-Datei. Aber nun gut, kannst du ja auch so machen. Ich wünsch dir weiter viel Erfolg...bin hier aber raus.
28.05.2024, 16:29 (Dieser Beitrag wurde zuletzt bearbeitet: 28.05.2024, 16:31 von Gast 123.)
Hallo
ich brauchte keine Minute, um in ein leeres Blatt eine ComboBox einzubauen und die Frage zu testen. Bei mir kommt bei Blattschutz nur eine Fehlermeldung, wenn der ComboBox Ausgang mit einer -gesperrten Zelle- verknüpft ist. Entsperrt man diese Zelle, so das sie beschreibbar ist, oder list man den ListIndex per Makro ein, kommt keine Fehlermeldung!
mfg Gast 123 Entsperre die Zelle R7 auf Unlocked, oder nimm Auswahl = ActiveSheet.ComboBoxes(1).ListIndex
Folgende(r) 2 Nutzer sagen Danke an Gast 123 für diesen Beitrag:2 Nutzer sagen Danke an Gast 123 für diesen Beitrag 28 • juschimitsu, Sabotaz