Seite 1 von 1

ListBox auswerten

Verfasst: Di, 02.11.2010 21:25
von miggel13
Hallo zusammen,

ich habe eine Datenbank und eine dazugehörige "Form"-Anwendung, mit der ich Daten in die Datenbank schreiben möchte. In dem Formular gibt es ein ListBox, dass den neuen Datensatz mit einer anderen Tabelle verknüpft. Die ListBox wird automatisch aus der Tabelle ausgelesen und der Benutzer kann daraus seinen Eintrag auswählen.
Nun möchte ich bei der Auswertung (beim Einfügen eines neuen Datensatzes) die ID ermitteln, die dem selektiertem Element der ListBox entspricht.

Das ganze mache ich aktuell mit OpenOffice 3.2 und dem Makro-Editor (Open Office Basic)


Leider habe ich trotz unter Verwendung der Suchfunktion keine passende Antwort gefunden, da ich es aktuell nicht mal fertig bringe, das aktuell markierte ListBox-Element auszugeben.

Wäre klasse, wenn mir jemand helfen könnte.

Gruß
miggel13

Re: ListBox auswerten

Verfasst: Di, 02.11.2010 22:48
von hinki
Hallo

Bei mir funktioniert folgender Code, um das aktuell ausgewählte ListBox-Element auszugeben.
Bedingung das Formular ist aktuell geöffnet.
Zum Testen habe ich eine Schaltfläche im Formular, um den Vorgang auszulösen.

Code: Alles auswählen

 
Sub Listeneintrag_anzeigen

oForm = ThisComponent.drawpage.forms.getbyindex(0) 'Der Verweis auf das geöffnete Formular
   oListbox = oForm.getByName("Listbox") 'Listbox ist der Name Deiner Listbox
   Eintrag = oListbox.getCurrentValue 'Eintrag ist der gesamte Listboxeintrag
   MsgBox "Daten gleich " + Eintrag 'Den Eintrag anzeigen

End Sub
Ich hoffe es funktioniert bei Dir.

Viel Glück und Spaß dabei
Uli

Re: ListBox auswerten

Verfasst: Mi, 03.11.2010 08:49
von miggel13
Hallo,

danke für die schnelle Antwort. Ich hab nur noch ein kleines Problem: Wenn ich einen Menüpunkt wähle und Absenden drücke, dann verschwindet der Wert der Listbox wieder und somit zeigt dein Code nur "Daten gleich" an.

Weißt du,warum das Formular den Wert nicht speichert. Mir ist auch aufgefallen, wenn ich in der ListBox einen Eintrag selektiere, und mich danach in ein anderes Textfeld bewege, dass der selektierte Wert ebenfalls wieder entfernt wird.

Gruß
Christian

Re: ListBox auswerten

Verfasst: Mi, 03.11.2010 20:03
von hinki
Hi,

jetzt habe ich doch leichte Verständnisschwierigkeiten.

Du schreibst:
Menüpunkt wähle und Absenden drücke
:?: Verstehe ich das richtig, Du wählst einen Eintrag in der Listbox, wählst einen Menüpunkt aus und drückst dann auf Absenden?

Der von mir eingestellte Code bezog sich in diesem Fall auf den Zeitpunkt, in dem Du den Eintrag in der Listbox ausgewählt hast - also vor dem Auswählen des Menüpunktes und dem Absenden.

Zum Thema "speichern von Werten in Formularen" schau mal hier: viewtopic.php?f=8&t=36688&p=136953&hilit=commit#p136953

Hilft Dir das weiter?

Gruß

Uli

Re: ListBox auswerten

Verfasst: Mi, 03.11.2010 21:35
von miggel13
Ah Entschuldigung, falls ich mich nicht ganz verständlich ausgedrückt habe: Ich hab ein Formular mit einem Textfeld und eben dieser ListBox. Zusätzlich gibts einen Button-Knopf der danach das Textfeld auswerten sollte sowie die Listbox. Anhand dieser Daten wird danach ein SQL-String erzeugt und dieser in die Tabelle eingefügt. (alls mittels OpenOffice Database und dem Formular-Editor)

Nun, das Textfeld kann ich bereits auslesen, jedoch hab ich Probleme mit dem auslesen der Elemente der Listbox, die aus einer anderen Tabelle ausgelsen werden. Im Prinzip benötige ich die ID, die das selektierte Element der Listbox vertritt, damit ich diese ID dann eben als Fremdschlüssel benutzen kann.

Gibts vllt. bereits so oder etwas ähnliches hier im Forum? Hab schon unterschiedliche Suchbegriffe benutzt, jedoch bisher erfolglos.

Gruß

Re: ListBox auswerten

Verfasst: Mi, 03.11.2010 23:39
von hinki
Hallo


ich weiß nicht ob das 100% passend ist, aber schau mal hier:

viewtopic.php?f=8&t=37952&p=142072&hili ... ox#p142072

Alternativ müsste ich mir Deine DB ansehen, um mir ein konkretes Bild zu machen.

Was hälst Du davon?

Uli

Re: ListBox auswerten

Verfasst: Do, 04.11.2010 11:42
von miggel13
Hi,

Klasse, der Link hat mir wirklich geholfen. SUPER. :D

Vielen Dank

Gruß
miggel13