Sur une feuille Calc, comme l'indique le titre, je cherche la dernière ligne et la dernière colonne avec des données (accessoirement, les premières aussi).
Les fonctions que j'ai écrit jusqu'à présent me donnent presque les résultats escomptés (sous forme de cellule), donc toute suggestion sera la bienvenue:
Code : Tout sélectionner
option explicit
const	searchTypeFormulas = 0
const	searchTypeValues = 1
const	searchTypeNotes = 2
public sub Main
	dim document as object
	set document   = ThisComponent
	
	dim sheet as object
	set sheet = document.sheets().getByIndex(0)
	
	dim firstCell as object
	set firstCell = getFirstCell(sheet)
	
	dim lastCell as object
	set lastcell = getlastcell(sheet)
end sub
private function getFirstCell(byref sheet as object) as object
	dim cell as object
	set cell = Sheet.getCellByPosition(sheet.columns.count-1, sheet.rows.count-1)
	
	dim sd as object
	set sd = cell.createSearchDescriptor()
	sd.SearchRegularExpression = True
	sd.SearchString = "."
	sd.SearchType = searchTypeValues
	sd.SearchBackwards = false
	
	set getFirstCell = sheet.findFirst(sd)
	
	set sd = nothing
	set cell = nothing
end function
private function getLastCell(byref sheet as object) as object
	dim cell as object
	set cell = Sheet.getCellByPosition(0, 0)
	
	dim sd as object
	set sd = cell.createSearchDescriptor()
	sd.SearchRegularExpression = True
	sd.SearchString = "."
	sd.SearchType = searchTypeValues
	sd.SearchBackwards = True
	
	set getLastCell = sheet.findFirst(sd)
	
	set rx = nothing
	set cell = nothing
end function 
  
						





 
 

