[gelöst] Laufzeitfehler: Objektvariable nicht belegt
Verfasst: Sa 9. Jul 2016, 13:21
Liebe LO Freunde,
in ein Rechnungsformular mit Unterformular und Tabellenkontrollfeld soll ein (in einem anderen Formular errechneter) Preis eingetragen werden. Hier der betreffende Makroteil:
BIs zu dieser Zeile klappt es
Beim setzen des Focus auf das Tabellenkontrollfed jedoch folgt die Fehlermeldung: BASIC-Laufzeitfehler. Objektvariable nicht belegt. in der Zeile
Was ist falsch im Makro? Ich komme nicht drauf.
Besten Dank und Gruß
acco
in ein Rechnungsformular mit Unterformular und Tabellenkontrollfeld soll ein (in einem anderen Formular errechneter) Preis eingetragen werden. Hier der betreffende Makroteil:
Code: Alles auswählen
oController = ThisDatabaseDocument.CurrentController
If not oController.isconnected then oController.connect
oForm1 = ThisComponent.drawpage.forms.getByName ("Netto_Form")
eNetto = oForm1.getbyname("Netto").Value
oFormDok2 = ThisDatabaseDocument.FormDocuments.getByName("Rechnung").open
oForm2 = oFormdok2.drawpage.forms.MainForm
' Zuriff auf Unterformular "RechPosten" und dort auf Tabellenkontrollfeld "RechPosten" (blöde Namensgleichheit)
oRechPostForm = oForm2.getByName("RechPosten").getByName("RechPosten")
xray oRechPostForm ' gibt "RechPosten" aus
' den Fokus auf das TABELLENkontrollfeld setzen und NICHT auf das Formularfeld
' Bezug auf das Tabellenkontrollfeld nehmen
oRechPostView = ThisComponent.CurrentController.GetControl(oRechPostForm)
xray oRechPostView ' gibt "leerer Datenwert (null)" aus
' den Fokus auf das TABELLENkontrollfeld setzen und NICHT auf das Formularfeld
oRechPostView.SetFocus ' bringt Fehlermeldung: BASIC-Laufzeitfehler. Objektvariable nicht belegt.
' dann auf die 5.Spalte im Tabellenkontrollfeld springen (0 = 1.Spalte, 1 = 2.Spalte)
oRechPostView.setCurrentColumnPosition(4)
Code: Alles auswählen
oRechPostForm = oForm2.getByName("RechPosten").getByName("RechPosten")
Code: Alles auswählen
oRechPostView.SetFocus
Besten Dank und Gruß
acco