VBA Quelle feuille contient le plus grand nombre de lignes

fb62840

XLDnaute Impliqué
Bonjour à toutes et tous,

Je fais appel à vous pour m'aider à affecter à une variable la valeur du plus grand nombre de lignes moins une trouvées sur 3 feuilles.

J'ai commencé ainsi :
Code:
With Sheets("Liste1")
nbval1 = .Cells(Feuil2.Rows.Count, 1).End(xlUp).Row - 1
End With
With Sheets("Liste2")
nbval2 = .Cells(Feuil3.Rows.Count, 1).End(xlUp).Row - 1
End With
With Sheets("NListe3")
nbvalnotes3 = .Cells(Feuil4.Rows.Count, 1).End(xlUp).Row - 1
End With
Pourriez-vous m'aider à rédiger la suite pour attribuer à une variable que je nommerai par exemple NBlignesMax la plus grandes des valeurs entre nbval1, nbval2, nbval3 ?

Merci
 

Paf

XLDnaute Barbatruc

fb62840

XLDnaute Impliqué
Re : VBA Quelle feuille contient le plus grand nombre de lignes

Bonjour,

Non les 2 fils sont indépendants.

J'avais effectivement imaginé dans un premier temps par tests successifs mais j'imaginais qu'il était possible de faire un peu plus efficace.
 
G

Guest

Guest
Re : VBA Quelle feuille contient le plus grand nombre de lignes

Bonsoir,

Ci-dessous deux fonctions différentes:

Code:
Function MaxLignes() As Long
Dim sh As Worksheet
Dim nbLignes As Long
    For Each sh In Worksheets(Array("Feuil1", "Feuil2", "Feuil3"))
        nbLignes = sh.Cells(Rows.Count, 1).End(xlUp).Row - 1
        If MaxLignes < nbLignes Then MaxLignes = nbLignes
    Next
End Function
Function MaxLignes2() As Long
    MaxLignes2 = Application.Max(Sheets("Feuil1").Cells(Rows.Count, 1).End(xlUp).Row - 1, _
                    Sheets("Feuil2").Cells(Rows.Count, 1).End(xlUp).Row - 1, _
                    Sheets("Feuil3").Cells(Rows.Count, 1).End(xlUp).Row - 1)
End Function
A+
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas