Bonjour, à priori il n'y a pas d'équivalent dans Ooo à End(xlUp). La seule
fonction qui existe retourne la dernière cellule de la feuille, ce qui n'est
pas la même chose.
Pour ma part je me suis fait une petite fonction qui me retourne la ligne de
la dernière cellule d'une colonne. Cette fonction utilise une autre fonction
qui retourne la ligne de la dernière cellule utilisée dans la feuille :

'---------------------------------------------------------------------------
---
' Retourne le N° de Ligne de la dernière cellule utilisée dans une colonne 
' à partir d'une cellule.
' Auteur : Jean-Claude DAVID 
' Ex : i = lGetLastLigFromCell ( oXLFeuil1.GetCellRangeByName("A1") )
'---------------------------------------------------------------------------
---
Function lGetLastLigFromCell( oCell As Object) As Long
Dim oCurseur As Object 'Curseur d'accès à la dernière cellule de la feuille
Dim i As Long 'Ligne courante
Dim lDerLig as Long 'Dernière ligne utilisée dans la feuille
Dim lFirstLig As Long 'Ligne de départ de la recherche
Dim lCol As String 'Colonne de recherche
Dim oFeuille As Object 'Feuille utilisée

        On Error Goto ErrorHandler

        'Feuille utilisée
        oFeuille = oCell.SpreadSheet
        'Dernière ligne utilisée dans la feuille
        lDerLig = lGetLastLig( oFeuille)
        'Ligne de départ de la recherche
        lFirstLig = oCell.CellAddress.Row
        'Colonne de recherche
        lCol = oCell.CellAddress.Column
        'Parcourt de la dernière ligne utilisée dans la feuille, 
        ' jusqu'à la première ligne de la zone passée en paramètre
        For i = lDerLig To lFirstLig Step - 1
                'Dernière Ligne
                If  oFeuille.getCellByPosition ( lCol, i).String <> "" Then 
                        lGetLastLigFromCell = i
                        Exit For 
                End If
        Next i
        Goto Exit_Here

Exit_False:
        Exit Function
        
Exit_Here:      
        Exit Function

ErrorHandler:
        MsgBox "lGetLastLigFromCell Erreur " & Err & " : " & Error$ & "
(Ligne N°" & Erl & ")", sbCritical + sbOkOnly, Titre_Appli
        On Error Goto 0
        Goto Exit_False         
End Function 

'---------------------------------------------------------------------------
-----------
' Retourne le N° de Ligne de la dernière cellule utilisée d'une Feuille 
' Auteur Jean-Claude DAVID
' Ex : i = lGetLastLig ( oXLFeuil1)
'---------------------------------------------------------------------------
-----------
Function lGetLastLig( oFeuille As Object) As Long
Dim oCurseur As Object 'Curseur d'accès à la dernière cellule de la feuille

        On Error Goto ErrorHandler

        oCurseur = oFeuille.createCursor 'Crée un curseur
        oCurseur.GotoEndOfUsedArea(True) 'Recherche de la dernière cellule
utilisée
        lGetLastLig = oCurseur.getRangeAddress.EndRow 'Dernière Ligne
        Goto Exit_Here

Exit_False:
        Exit Function
        
Exit_Here:      
        Exit Function

ErrorHandler:
        MsgBox "lGetLastLig Erreur " & Err & " : " & Error$ & " (Ligne N°" &
Erl & ")", sbCritical + sbOkOnly, Titre_Appli
        On Error Goto 0
        Goto Exit_False         
End Function 


Bon courage, 
Jean-Claude

-----Message d'origine-----
De : superfan [mailto:[EMAIL PROTECTED]
Envoyé : samedi 28 mai 2005 20:06
À : prog@fr.openoffice.org
Objet : [prog] Trouver la dernière cellule vide d'une colonne


Bonjour à tous,
 
Le problème que j'ai est le suivant :
 
   J'ai deux colonnes (A et B), dans ces colonnes je recopie par macro des
données en me positionnant sur la dernière cellule vide de la colonne A.
Cette cellule vide n'est pas obligatoirement  la cellule active par défaut.
 
    Les données que je suis amené à recopier varient en longueur (d'une
ligne à plusieurs sur les 2 colonnes A et B).
 
    L'équivalent chez MS pour le tableur est End(xlUp).
 
Comment peut on faire dans OpenOffice, j'ai essayé sans trouver.
 
Merci par avance.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à