ich beschäftige mich erst seit kurzem mit Basic-Programmierung in OOo. Mir ist bisher noch nichts eingefallen wie ich ein Findfirst programmtechnisch abfangen kann, oder anders gesagt, wenn ein Findfirst zu keinem Ergebnis kommt bekomme ich, völlig richtig, eine Fehlermeldung.
Die Meldung, die ich bei der Ausführung erhalte ist: BASIC-Laufzeitfehler. Objektvariable nicht belegt.
Markiert ist die Zeile "If not oCell2 = null then"
Mein bisheriger Code sieht so aus:
Code: Alles auswählen
Sub Test
Dim oDoc as Object
Dim oSheet as Object
Dim oCell as Object
Dim oSheet2 as Object
Dim oCell2 as Object
Dim oCell3 as Object
Dim oSearchDescriptor as Object
Dim iAnzahl as Integer
Dim i as Integer
oDoc = ThisComponent
If oDoc.supportsService( "com.sun.star.sheet.SpreadsheetDocument" ) then
oSheet = oDoc.Sheets.getByName("Sendungssummen")
oSheet2 = oDoc.Sheets.getByName("Daten")
for i=1 to 20000
oCell = oSheet.getCellByPosition(3,i)
oSearchDescriptor = oSheet2.createSearchDescriptor
oSearchDescriptor.SearchString = ocell.string
oCell2 = oSheet2.FindFirst(oSearchDescriptor)
If not oCell2 = null then
oCell3 = oSheet2.getCellByPosition(oCell2.row,oCell2.Column + 11)
msgbox oCell3.string
EndIf
next i
End If
end Sub
Wenn es Verbesserungsvorschläge gibt bitte immer her damit.
Gruß
René