[Gelöst] Name einer ListBox auslesen
Verfasst: Di, 27.07.2010 13:58
Hallo zusammen,
ich fülle in Calc mehrereListboxen, indem ich ihr einen Zellbereich zuweise:
xray zeigt an, dass die ListBox beim Erzeugen den Namen "ListBox11" hat.
Wenn ich die Liste ändere, soll ein Makro aufgerufen werden, das den aktualisierten Wert in eine Zelle schreibt.
Wie kann ich den Namen der soeben angeklickten ListBox (im Beispiel oben: ListBox11) auslesen?
Ein Zugriff ist möglich:
ist problemlos möglich, hilft aber nicht, da man ja den Namen erfahren möchte. Eine Schleife über alle ListBox-Elemente auf dem Tabellenblatt würde ja auch die anderen ListBoxen erwischen... Man müsste also den Namen der angeklickten ListBox rausrkiegen.
Eine Abrage á la
leider nicht.
Ich hab schon lange gesucht & gegoogelt, hier, bei Andrews Makros und in der api, aber anscheinend verstehe ich nicht, an welcher Stelle man ansetzen muss.
Für (kleinere oder größere) Hinweise wäre ich sehr dankbar!
LG Groby
ich fülle in Calc mehrereListboxen, indem ich ihr einen Zellbereich zuweise:
Code: Alles auswählen
DialogLibraries.LoadLibrary( "Standard" )
GlobalScope.BasicLibraries.LoadLibrary("Tools")
oController = starDesktop.CurrentFrame.Controller
objBlatt = ThisComponent.Sheets().getByName("Listen")
ThisComponent.CurrentController.setActiveSheet(objBlatt)
sBereichsname = "Zielgruppe"
oListe =objBlatt.getCellRangeByName(sBereichsname).GetDataArray()
oListBox=objBlatt.DrawPage.Forms.GetByIndex(0).GetByName("ListBox" & nZaehler)
Redim Preserve sListe(UBound(oListe())) As String
For n2 = LBound(sListe()) To UBound(sListe())
oEintrag() = oListe(n2)
sListe(n2) = oEintrag(0)
Next n2
oListBox.StringItemList = sListe()
xray oListBox
Wenn ich die Liste ändere, soll ein Makro aufgerufen werden, das den aktualisierten Wert in eine Zelle schreibt.
Wie kann ich den Namen der soeben angeklickten ListBox (im Beispiel oben: ListBox11) auslesen?
Ein Zugriff ist möglich:
Code: Alles auswählen
n = 11
oListbox=objBlatt.DrawPage.Forms.GetByIndex(0).GetByName("ListBox" & n)'.GetIndex
Eine Abrage á la
Code: Alles auswählen
strName = oListbox.Name
Ich hab schon lange gesucht & gegoogelt, hier, bei Andrews Makros und in der api, aber anscheinend verstehe ich nicht, an welcher Stelle man ansetzen muss.
Für (kleinere oder größere) Hinweise wäre ich sehr dankbar!
LG Groby