Comptage

piep14

XLDnaute Occasionnel
Bonsoir, comment je peux faire pour compter le nombre de cellule remplis dans la colonne A de l'onglet Test ? Les cellules sont remplis de A1 à Axx.

Merci
 

piep14

XLDnaute Occasionnel
Donc le debug s'arrete sur

Code:
Sub Dupliquer_Formule()
    total = Application.WorksheetFunction.CountA(Sheets('TAMPON').Columns(6))
    Selection.AutoFill Destination:=Range('C2:E' & total), Type:=xlFillDefault
End Sub

Et quand s'affiche la valeur de total, il m'affiche 64. (valeur correspondant au nombre de cellule comprenant une formule). Moi, je voudrais retourner le nombre de cellule comportant une valeur !!!!

Si vous avez idée. Je vous remercie !!
 

MichelXld

XLDnaute Barbatruc
bonjour

si tu donnes les informations au compte goutte on n'est pas arrivé ...;o)

si ce sont des formules qui ne renvoient pa s de valeurs : que renvoient elles ? rien = '' ? des 0 ?

en fonction des tes formules , tu peux adapter cette procedure
pour cet exemple , les formules seraient du style =SI(B2+C2=0;'';B2+C2)


Dim Cell As Range
Dim Total As Integer

For Each Cell In Range('A1:A' & Range('A65536').End(xlUp).Row)
If Not Cell.Value = '' Then Total = Total + 1
Next Cell



bon dimanche
MichelXld
 

piep14

XLDnaute Occasionnel
En faite, j'ai fait :

Code:
Sub Dupliquer_Formule()
    Sheets('TAMPON').Select
    total = Range('f65536').End(xlUp).Row
    Sheets('CONCURRENCE').Select
    Range('B2').Select
    Selection.AutoFill Destination:=Range('B2:E2'), Type:=xlFillDefault
    Range('B2:E2').Select
    Range('A2:E2').Select
    Selection.AutoFill Destination:=Range('A2:E' & total), Type:=xlFillDefault
    Range('A2:E13').Select
End Sub

Mais le problème comme je l'ai souligné précédemment, c'est qu'il prend meme les cellules vides car elles contienent des formules. Ils me restent plus qu'a les ignorer et tout sera impécable !!

Merci a vous tous
 

piep14

XLDnaute Occasionnel
C'est bon, je vous remercie !!!

Réponse :

Code:
    iTotal = Range('f65536').End(xlUp).Row
     While iTotal > 1 And (Cells(iTotal, 6).Value = '' Or Cells(iTotal, 6).Value = 0)
        iTotal = iTotal - 1
    Wend

Merci a tous, merci bbil

Message édité par: piep14, à: 15/01/2006 13:54
 

Pièces jointes

  • concurrence.zip
    26.8 KB · Affichages: 19
  • concurrence.zip
    26.8 KB · Affichages: 18
  • concurrence.zip
    26.8 KB · Affichages: 17

Statistiques des forums

Discussions
312 520
Messages
2 089 297
Membres
104 092
dernier inscrit
karbone57