Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1924to1928
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

Fluides Ending für Listboxen, Ansprechen

Fluides Ending für Listboxen, Ansprechen
18.04.2023 08:32:17
Shouchen

Hallo allerseits,

ich hätte eine Frage bezüglich des Ansprechens von (Name) Properties in Userforms via VBA:

Ich will diverse Listboxen, mit dem gleichen Parameter füllen und bisher ist meine Lösung wie folgt:

Private Sub UserForm_Initialize()

i = 2
Do While Worksheets("Hinterlegte Allgemeines").Cells(i, 1) > ""
    Me.Monster_AbfragePrio_Ausda Worksheets("Hinterlegte Allgemeines").Cells(i, 1)
    Me.Monster_AbfragePrio_Ausstr Worksheets("Hinterlegte Allgemeines").Cells(i, 1)
    Me.Monster_AbfragePrio_Charme Worksheets("Hinterlegte Allgemeines").Cells(i, 1)
    Me.Monster_AbfragePrio_Empa Worksheets("Hinterlegte Allgemeines").Cells(i, 1)
    Me.Monster_AbfragePrio_Gesch Worksheets("Hinterlegte Allgemeines").Cells(i, 1)
    Me.Monster_AbfragePrio_Int Worksheets("Hinterlegte Allgemeines").Cells(i, 1)
    i = i + 1
Loop

End Sub


Das funktioniert auch tadellos, nur würde ich gerne wissen, ob es vielleicht kürzel gibt, womit alle diese Listboxen angesprochen werden können, ohne dass man es repetativ im Code hat.
Beispiel wäre, wenn man ein Sternchen hinter den Name String setzt, dass funktioniert aber so nicht:

"Me.Monster_AbfragePrio_*"

Dann könnte man sich, bei vielen Listboxen und geschickter Deklarationswahl, viel Arbeit sparen und eine Bereicherung für die Zukunft sein.
Mit google habe ich leider bisher nichts dazu gefunden.

Vielen Dank im voraus. :)
Der Benni

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fluides Ending für Listboxen, Ansprechen
18.04.2023 08:37:15
Shouchen
Nachtrag:

Natürlich muss immer noch .Additem angefügt werden.


AW: Fluides Ending für Listboxen, Ansprechen
18.04.2023 09:02:03
Yal
Hallo Benni,

probiere so:
Private Sub UserForm_Initialize()
Dim i As Long
Dim E

    i = 2
    Do While Worksheets("Hinterlegte Allgemeines").Cells(i, 1) > ""
        For Each E In Split("Ausda Austr Charme Empa Gesch Int")  'splitet per default mit Leerzeichen
            Me.Controls("Monster_AbfragePrio_" & A).AddItem Worksheets("Hinterlegte Allgemeines").Cells(i, 1)
        Next
        i = i + 1
    Loop
End Sub
Ungetestet (womit auch? Den Aufwand fürs Nachbauen nehme ich nicht auf mich)

VG
Yal


Anzeige
AW: Fluides Ending für Listboxen, Ansprechen
18.04.2023 09:07:31
Shouchen
Moin Yal,

ja super!
Perfekt - das hilft mir richtig gut weiter!
Dankeschön. :)

Bis dann


AW: Fluides Ending für Listboxen, Ansprechen
18.04.2023 10:34:13
Daniel
Hi
So kannst du alle Controls bearbeiten, die einen bestimmten Text im Namen haben
Dim CRT as Control 
For each CRT in me.controls
    If CRT.name like "Monster_AbfragePrio_Ausda*" then
        With Worksheets("Hinterlegte Allgemeines").Cells(1, 1)
            CRT.List = Range(.Offset(1, 0), .end(xldown)).value
        End with
    End if
Next
Gruß Daniel

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige