XL 2021 Formule compter les cellules vides lusqu'à la dernière ligne NON vide

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous :)

Compter les cellules vides, c'est bon :
en E1 :
=SI(NB.VIDE(G7:G20)+NB.VIDE(J7:M20)+NB.VIDE(R7:S20)>0;"vide "&NB.VIDE(G7:G20)+NB.VIDE(J7:M20)+NB.VIDE(R7:S20);"OK")

Je voudrais compter jusqu'à la dernière ligne NON vide.
Pourriez-vous m'aider ?
Grand merci :)

Je joins un petit fichier test.
Un grand merci à toutes et à tous :)
Et je continue mes recherches...
 

Pièces jointes

  • compter vide test.xlsm
    21.8 KB · Affichages: 6
Dernière édition:

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Lionel,
Un essai en PJ avec :
Code:
Function Vides()
Dim T, DL, i, Plage, N
Application.Volatile
DL = [E100000].End(xlUp).Row
T = Array(7, 10, 11, 12, 13, 16, 18, 19)
For i = 0 To 7
    Set Plage = Range(Cells(7, T(i)), Cells(DL, T(i)))
    N = N + Application.CountIfs(Plage, "")
Next i
If N = 0 Then Vides = "" Else Vides = "Attention! " & N & " cellule(s) vide(s)."
End Function
 

Pièces jointes

  • compter vide test.xlsm
    22 KB · Affichages: 2

job75

XLDnaute Barbatruc
Bonjour Lionel, sylvanu,

Formule en E1 :
Code:
=SIERREUR("Vide "&EXP(LN(NB.VIDE(INDIRECT("G7:G"&EQUIV(9^9;E:E)))+NB.VIDE(INDIRECT("J7:M"&EQUIV(9^9;E:E)))+NB.VIDE(INDIRECT("R7:S"&EQUIV(9^9;E:E)))));"OK")
A+
 

Pièces jointes

  • compter vide test.xlsm
    21.7 KB · Affichages: 4

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour Lionel,
Un essai en PJ avec :
Code:
Function Vides()
Dim T, DL, i, Plage, N
Application.Volatile
DL = [E100000].End(xlUp).Row
T = Array(7, 10, 11, 12, 13, 16, 18, 19)
For i = 0 To 7
    Set Plage = Range(Cells(7, T(i)), Cells(DL, T(i)))
    N = N + Application.CountIfs(Plage, "")
Next i
If N = 0 Then Vides = "" Else Vides = "Attention! " & N & " cellule(s) vide(s)."
End Function
Bjr sylvanu :)
Je te remercie pour ta fonction.
C'est bon :)
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re-Bjr :)

Les 2 solutions sont bonnes et j'avance par étape.
Dernière étape si vous voulez bien encore m'aider :

Partant du principe qu'il ne pourra y avoir des cellules vides que sur la ligne en cours de traitement

Je voudrais que s'il y a 1 ou plusieurs cellules vides, qu'il ne puisse pas être possible de cliquer ailleurs que sur la ligne où les cellules sont vides,
Autrement dit : que tout soit bloqué sauf la ligne où sont les vides jusqu'à remplissage des cellules vide.

En cas, je remets le classeur tests qui a vos 2 solutions.

Encore merci :)
 

Pièces jointes

  • compter vide test.xlsm
    22.5 KB · Affichages: 3

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re-Bjr :)
J'ai trouvé :
VB:
Private Sub Worksheet_SelectionChange(ByVal R As Range)
Application.EnableEvents = True
If Not Intersect(R, Range("e6:s30000")) Is Nothing And R.Count = 1 Then
    If [e1] > 0 Then
    ActiveSheet.Cells(Rows.Count, "e").End(xlUp)(1).Select
    End If
End If
End Sub
Merci d'avoir été là :)
 

Efgé

XLDnaute Barbatruc
Bonjour à tous
Re-Bjr :)
J'ai trouvé :
VB:
Private Sub Worksheet_SelectionChange(ByVal R As Range)
Application.EnableEvents = True
If Not Intersect(R, Range("e6:s30000")) Is Nothing And R.Count = 1 Then
    If [e1] > 0 Then
    ActiveSheet.Cells(Rows.Count, "e").End(xlUp)(1).Select
    End If
End If
End Sub
Merci d'avoir été là :)

Juste pour rire ; clique sur l'intersection entre les lignes et les colonnes

1707128511352.png

Cordialement
 

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 299
Membres
103 173
dernier inscrit
Cerba95