Hallo,
bei der Search Methode solle Ergebnisse kopiert werden.
dieses geht gut, solange der Begriff nicht direkt hintereinander in der nächsten Zeile steht.
Der Supportsservice("com.sun.star.table.Cell") ist dann scheinbar fehlerhaft???
Wird zwischen den beiden Zeilen eine Leerzeile eingefügt, werden diese wieder korrekt kopiert.
Code: Alles auswählen
sub Searchxx
sCol = 0
oSuche = "Begriff"
sSpalte = oSheet.getColumns.getByIndex(sCol)
oSearch = sSpalte.createSearchDescriptor 'Zeile die durchsucht werden soll
oSearch.SearchString = oSuche 'Begriff nach dem gesucht wird
oSearch.SearchRegularExpression = False
oResult = sSpalte.findAll(oSearch)
'nächsten Begriff suchen, falls öfters vorkommt.
For n = 0 To oResult.Count - 1
oFound = oResult(n) <--- z.b. n=11 aber bei n=5 und 6 wird nicht kopiert aus obigen Grund
If oFound.supportsservice("com.sun.star.table.Cell") Then
frow =oFound.Celladdress.row
'copy
sRange = oSheet.getCellRangeByPosition(0,frow,9,frow).getRangeAddress()
zRange = zSheet.getCellByPosition(Ca,Ra+n).getCellAddress
zSheet.copyRange(zRange, sRange)
End If
Next n
end sub
_________________
Moderationshinweis
Zur übersichtlichen Darstellung des Textes und vom Programmcode im Text [code][/code] Tags gesetzt.
lorbass, Moderator