Function Opslag(Raekke As Integer, Pos As Integer)
Dim Doc As Object
Dim Sheet As Object
Dim Cell As Object
Dim CellRange As Object
Doc = StarDesktop.CurrentComponent
Sheet = Doc.Sheets.getByName(“Dankort”)
If Raekke >0 Then
Raekke = Raekke - 1
Cell = Sheet.GetCellByPosition(Pos,Raekke)
Opslag = Cell.String
Endif
End Function
Funktionen virker efter hensigten (opslag udfra række nr.), men når jeg så åbner regnearket får jeg følgende meddelse
“Objektvariablen er ikke initialiseret.” (i linjen markeret med rødt)
Kan man ikke bruge hjemmelavet funktioner i OOo? Eller er det bare mig der er noget ivejen med?
Man kan sagtens defiinere sin egen funktion. Det er lidt af en smagssag og lidt religion om man skal bruge “dim” for at deklarere et objekt. Jeg skipper dem normalt. Et skud i tåen kunne være :
Function Opslag(Raekke As Integer, Pos As Integer)
oDocument=ThisComponent
oSheet=oDocument.Sheets.getByName("Dankort")
If Raekke >0 Then
Raekke = Raekke - 1
Cell = oSheet.GetCellByPosition(Pos,Raekke)
Opslag = Cell.String
Endif
End Function
Men prøve og se på http://www.abj.dk/OOo/ om der ikke er noget der kan hjælpe dig der. Her er skrevet lidt om makroer og i manualerne er der nogle links til FAQ’er o.s.v. som kan være nyttige hvis man render ind i udfordringer.