diesmal habe ich für mich eine echt extrem unverständlich harte Nuss zu knacken.
Beispieldatei ist im Anhang.
Beim klick auf einen Button im Tabellenblatt soll ein Dialog gestartet werden. Das funktioniert aber diesmal gar nicht wie geplant, und das Makro wird mit folgender Fehlermeldung abgebrochen. Okay, so eine Fehlermeldung ist für mich nichts neues. Aber diesmal versteh ich reine weg gar nichts, da mir das verständis wegen der Entstehung der Fehlermeldung einfach fehlt. Also habe ich in der IDE das Makro per Einzelschritt ausgeführt, und etwas sehr merkwürdiges beobachtet.
Ich versuch mal den Ablauf zu beschreiben.
In der Basic-IDE im Modul *Formular* das Makro per Einzelschritt starten.
Als erstes wird die
Code: Alles auswählen
Sub EingabeFormular
Dann wird die gewünschte Seite eingestellt:
Code: Alles auswählen
oDialog1.Model.Step = 1
Code: Alles auswählen
Sub Ruecksetzen
Code: Alles auswählen
oDialog1.getControl("DateField1").setEmpty()
Und das ist kein Scherz!
Jetzt springt der Einzelschritt-Anzeiger im gleichem Modul in die
Code: Alles auswählen
Sub KopfDaten
In der Sub Ruecksetzen sollen noch einige weitere Elemente nach dem DateField1 auf .Visible = False gesetzt werden. Doch dazu kommt es erst gar nicht, da der Einzelschritt-Anzeiger beim erreichen von
Code: Alles auswählen
oDialog1.getControl("DateField1").setEmpty()
Wie ist das möglich das ein Sprung in eine andere Sub initialisiert und ausgeführt wird, ob wohl es keinen direkten Makro programmierten dementsprechenden Befehl dafür gibt?
Ich muss ergänzend dazu sagen, das dem DateField1 bei
- Ereignisse
- Text modifiziert
die Sub KopfDaten zugeordnet ist.
Und wenn ich das Makro wie geplant über den Button im Tabellenblatt starte, dann kommt es an genau der gleichen Stelle zu der eingangs gezeigten Fehlermeldung.
Und nun leg ich noch eins oben drauf, nein, besser gesagt sogar zwei!
1.)
Wenn ich das DateField1 auskommentiere, dann wird die
Code: Alles auswählen
Sub Ruecksetzen
Code: Alles auswählen
Sub EingabeFormular
Code: Alles auswählen
oDialog1.execute
Wenn ich dem DateField1 das zugeordnete Makro lösche, und im Makro die DateField1-Zeile NICHT auskommentiere, dann gibts auch keine Fehlermeldung. und der ganze Prozess wie bei 1.) beschrieben läuft auch jetzt ab.
Das auskommentieren, bzw. das zugeordnete Makro für DateField1 löschen, sind leider keine brauchbaren Lösungen da ich diese Funktionaltäten brauche.
WinXP, OOo 3.2.1 & 3.3.0
- Was zum Donnerwetter ist da nur los?
- Weiß einer von euch wie ich das Problem beseitigen kann?
- Kann mir überhaupt jemand helfen?
- Könnt ihr das unter anderen Bedingungen bestätigen, Betriebssystem und anderes Office?
Ich bedanke mich schon mal für eure Bemühungen. Und diesmal ist es ja echt eine Mühseelige Arbeit.
Freue mich auf eure Antworten.
Gruß
balu