Controls mit ListView

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Controls mit ListView
von: Jonte
Geschrieben am: 16.08.2015 06:50:13

Guten Morgen,
ein String gibt mir ein Teil des Names einer ListView. Mit Controls möchte ich dann das Objekt _ ansprechen. Hat bislang auch bei allem Anderen geklappt nur folgendes funktioniert nicht.


ZweiterTeil as String
ZweiterTeil = "bastel"
with Userform.Controls("LV_Ge" & ZweiterTeil)
   .ListItems.Add = "Eintrag"
end with

Fehler: Laufzeitfehler '438': Objekt unterstützt diese Eigenschaft oder Methode nicht
hingegen folgendes funktioniert:
with Userform.Controls("LV_Ge" & ZweiterTeil)
   .ListItems(.ListItems.Count).SubItems(1) = "Zusatz zu Eintrag"
end with

KURZ: Alles funktioniert nur nicht die Kombination von Controls() und ListViewAdd
Hoff ich konnte das Problem verständlich machen und vielen Dank schonmal für die Mühe :-)
Jonte

Bild

Betrifft: AW: Controls mit ListView
von: Nepumuk
Geschrieben am: 16.08.2015 08:54:21
Hallo,
lass das = Zeichen weg.
Gruß
Nepumuk

Bild

Betrifft: AW: Controls mit ListView
von: Jonte
Geschrieben am: 16.08.2015 10:12:43
Hallo Nepumuk,
vielen Dank für deine Antwort. Leider bringt dies nur eine neue Fehlermeldung:
Laufzeitfehler 35600: Indexgrenze überschritten

Bild

Betrifft: AW: Controls mit ListView
von: Nepumuk
Geschrieben am: 16.08.2015 11:20:02
Hallo,
ich hätte es genauer schreiben sollen.
Die Add-Methode der ListItems-Klasse sieht so aus:
Function Add([Index], [Key], [Text], [Icon], [SmallIcon]) As ListItem
Also:

With UserForm.Controls("LV_Ge" & ZweiterTeil)
    .ListItems.Add Text:="Eintrag"
End With

Gruß
Nepumuk

Bild

Betrifft: AW: Controls mit ListView
von: Jonte
Geschrieben am: 16.08.2015 11:44:24
leider führt auch dies nicht zum erhofften Erfolg. Diesmal keine Fehlermeldung aber auch kein Eintrag.
Wenn ich das with mit dem controls umgehe indem ich als Beispiel einfach mal die erste ListView-Adresse nehme, dann bekomme ich meine Einträge.

UserForm.LV_Gebastel.ListItems.Add = "Test"
Da es sich aber um mehrere ListViews handelt übergebe ich die ZielListView als String. komischerweise funktioniert es auch problemlos mit dem Subitemteil.

Bild

Betrifft: AW: Controls mit ListView
von: Jonte
Geschrieben am: 16.08.2015 17:21:58
Hey Nepumuk,
leider war ich beim testen wohl etwas zu dusselig.
Natürlich liefert dein letzter Code Ergebnisse. Ohmann habe ich noch lange gesucht bis ich irgendwann mal gemerkt habe das ich auf die falsche Listview schaue :-/
Folgendes funktioniert auch:

With UserForm.Controls("LV_Ge" & ZweiterTeil)
    .ListItems.Add() = "Eintrag"
End With
oder eben das was Nepumuk geschrieben hat:
With UserForm.Controls("LV_Ge" & ZweiterTeil)
    .ListItems.Add Text:="Eintrag"
End With

Nochmals vielen Dank Nepumuk für deine Mühe.
Beste Grüße
Jonte

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Eintrag in Zelle einfrieren"