Hallo Hans-Peter,
Am 18.05.2011 22:46, schrieb Hans-Peter Jansen:
 ...
 Also nochmal zum Verständnis:
 Beim Laden des Dokuments wird das Makro OnLoad ausgeführt (Ereignis:
 "Laden des Dokuments beendet" in Extras->Anpassen->Ereignisse).
 Diese Funktion liest im Beispiel die Daten manuell aus Tabelle2 und
 besetzt sowohl die Comboboxen (driverListBox und vehicleListBox), als
 auch das globale Feld vehicleList. Nach Laden des Dokuments zeigt
 die MsgBox, dass die 3 Beispiel-Datensätze korrekt geladen wurden:
 LBound: 0, UBound: 3
 Wenn der Benutzer nun einen Fahrer auswählt, wird das Makro
 OnDriverChanged ausgeführt (Ereignis: "Text modifiziert" von
 Kombinationsfeld driverListBox).
 Eigentlich erwartete ich, den Inhalt von vehicleList unversehrt
 wiederzufinden. Die MsgBox zeigt nun aber:
 driver: <Name des ausgewählten Fahrers>, vehicle: <> LBound: 0,
 UBound: -1
 Die letzte Zeile ist mein Problem: sie dokumentiert, dass das Feld
 vehicleList von irgendwas zwischenzeitlich geleert wurde. Dieses
 Feld, als
 Global vehicleList() as Vehicle
 deklariert, verliert zwischen den beiden Events seinen Inhalt. Es
 scheint, dass jeder Event-Aufruf das gesamte Modul erneut
 initialisiert, und die Frage ist, wie kann ich den Inhalt einer
 globalen Modul-Variable von einem zum anderen Event hinüber retten,
 oder bin ich hier total auf dem Holzweg?
In der Annahme, das Du mit Event nicht Events (so wie der 
Eventhandler sie verwendet) meinst, sondern Module oder gar 
Funktionen, hilft Dir vielleicht
dies hier:
http://wiki.services.openoffice.org/wiki/Documentation/BASIC_Guide/Scope_of_Variables
weiter?
Gruß
Volker
PS.: Bevor Du jedoch noch viel Zeit in Diese Arbeit steckst...
Gehst Du davon aus, das das was Du vor hast für längere Zeit Bestand 
haben soll?
Wird Deine Tabellen ggf. sogar produktiv genutzt werden? Oder 
handelt es sich lediglich um eine "Machbarkeitsstudie"?
Wenn letzteres nicht zutreffen sollte, dann beachte den 
experimentellen Status der Makrofunktion!
Denke auch daran, das sich Basicfunktionen innerhalb von Libre- und 
auch Openoffice von Version zu Version ändern können.
So wie es aussieht möchtest Du eigentlich Daten verwalten. Das kann 
eine Datenbank ggf. besser tun als eine Tabelle mit eingebettetem 
Formular.
--
Informationen zum Abmelden: E-Mail an users+help@de.libreoffice.org
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert
Context
   
 
  Privacy Policy |
  
Impressum (Legal Info) |
  
Copyright information: Unless otherwise specified, all text and images
  on this website are licensed under the
  
Creative Commons Attribution-Share Alike 3.0 License.
  This does not include the source code of LibreOffice, which is
  licensed under the Mozilla Public License (
MPLv2).
  "LibreOffice" and "The Document Foundation" are
  registered trademarks of their corresponding registered owners or are
  in actual use as trademarks in one or more countries. Their respective
  logos and icons are also subject to international copyright laws. Use
  thereof is explained in our 
trademark policy.