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

ListBox umbenennen

ListBox umbenennen
24.10.2014 16:11:34
Marco
Hallo Zusammen!
Ich habe folgendes Problem: Ich möchte via VBA-Code aus einem Modul heraus eine ListBox erzeugen und im direkt darauf folgenden Schritt den Namen ändern, das sieht momentan wie folgt aus:
Option Explicit

Sub SoSollEsSein()
'Im ersten Schritt ListBox erzeugen, Maße und Ausrichtung erst mal egal
ActiveSheet.OLEObjects.Add(ClassType:="Forms.ListBox.1", Link:=False, _
DisplayAsIcon:=False, Left:=(1), Top:=(1), _
Width:=95.2941176470588, Height:=60).Select
'Erzeugen klappt wunderbar
'Anschließend den Namen ändern, um ihn später eindeutig zuordnen zu können:
'Diese Methode funktioniert nicht
ActiveSheet.OLEObjects("ListBox1").Object.Name = "ZumBeispielSo"
'Diese Methode funktioniert auch nicht
ActiveSheet.OLEObjects("ListBox1").Name = "ZumBeispielSo"
'Und diese funktioniert auch nicht
ActiveSheet.ListBox1.Name = "ZumBeispielSo"
End Sub

Würde ich mein Vorhaben auf 2 verschiedene Sub's aufteilen, also erst erzeugen, dann umbenennen, _ dann würde es funktionieren. Also in etwa so:

Sub ErstErzeugen()
ActiveSheet.OLEObjects.Add(ClassType:="Forms.ListBox.1", Link:=False, _
DisplayAsIcon:=False, Left:=(1), Top:=(1), _
Width:=95.2941176470588, Height:=60).Select
End Sub

Sub DannUmändern()
'Dann funktioniert das auf einmal:
ActiveSheet.ListBox1.Name = "ZumBeispielSo"
End Sub

Erst nach dem das obere Makro beendet wird, funktioniert dann das andere, und zwar auch nur _ manuell. Ich hab mittlerweile schon alles versucht und bin schon total verzweifelt. Auch mit Call-Befehl geht nichts. Hab auch schon versucht das ganze mit einem dritten Makro zu kapseln, geht auch nicht....

Sub DrittesMakro()
Call ErstErzeugen
Call DannUmändern
End Sub

Kann mir wer helfen und auch vllt erklären wo das Problem liegt?
Danke im Voraus!!!

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ListBox umbenennen
24.10.2014 16:18:54
Tino
Hallo,
versuch es mal so.
Mach es aber nicht zu oft, sonst hast du schnell mehrere übereinander!
Sub SoSollEsSein()
'Im ersten Schritt ListBox erzeugen, Maße und Ausrichtung erst mal egal
With ActiveSheet.OLEObjects.Add(ClassType:="Forms.ListBox.1", Link:=False, _
DisplayAsIcon:=False, Left:=(1), Top:=(1), Width:=95.2941176470588, Height:=60)
.Name = "ZumBeispielSo"
End With
End Sub
Gruß Tino

AW: ListBox umbenennen
24.10.2014 16:27:49
Luschi
Hallo Marco,
bei mir klappt das so mit Excel 2003, 2010,2013:

Sub SoSollEsSein()
Dim xList As Object
'Im ersten Schritt ListBox erzeugen, Maße und Ausrichtung erst mal egal
Set xList = ActiveSheet.OLEObjects.Add(ClassType:="Forms.ListBox.1", Link:=False, _
DisplayAsIcon:=False, Left:=(1), Top:=(1), _
Width:=95.2941176470588, Height:=60)
'Erzeugen klappt wunderbar
'Diese Methode funktioniert!!!
xList.Name = "ZumBeispielSo_1"
Set xList = Nothing
End Sub
Gruß von Luschi
aus klein-Paris

Anzeige
AW: ListBox umbenennen
24.10.2014 17:51:56
Marco
Hab beide Vorschläge ausprobiert und beide haben wunderbar funktoniert! Echt Spitze und superschnelle Antwort! Was mich noch opional interessieren würde ist, wieso meine Vorschläge nicht geklappt haben, aber eine Antwort darauf erwarte ich jetzt nicht auch noch.
Vielen Dank und viele Grüße!

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige