Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Guapo33

XLDnaute Nouveau
Bonjour
Je voudrais savoir s'il est possible de compter dans une colonne du texte non barré et qui ont le même contenu.
Exemple

ABC
1ELEVE (texte barré)
2GRAD
3ELEVE
4ELEVE (texte barré)
5ELEVE (teste barré)
6GRAD
7GRAD
8GRAD3
9ELEVE1

Merci pour vos réponses et votre temps
Bonne journée à tous
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Bonjour beau gosse (Guapo), bonjour le forum,

peut-être comme ça :
Code:
Sub Macro1()
Dim cel As Range 'déclare la variable cel (CELlule)
Dim r As Range 'déclare la variable r (Recherche)
Dim nb As Integer 'déclare la variable nb (Nombre de cellules Barrées)
Dim pa As String 'déclare la variable pa (Première Adresse)
Dim mes As String 'déclare la variable mes (MESsage)

Application.ScreenUpdating = False 'masque les changements à l'écran
For Each cel In Range("B1:B" & Cells(Application.Rows.Count, 2).End(xlUp).Row) 'boucle sur toutes les cellules éditées cel de la colonne B
    nb = 0 'initialise le nombre de cellules barrées
    If cel.Font.Strikethrough = True And cel.Interior.ColorIndex <> 3 Then 'condition 1 : si la cellule est barrée et si elle n'est pas colorée en rouge
        Set r = Columns(2).Find(cel.Value, , xlValues, xlWhole) 'définit la recherche
        pa = r.Address 'définit la première adresse
        Do 'ecécute
            If r.Font.Strikethrough = True Then 'condition 2 : si l'occurrence trouvée est barrée
                r.Interior.ColorIndex = 3 'colore l'occurrence trouvée de rouge
                nb = nb + 1 'incrémente nb
            End If 'fin de la condition 2
            Set r = Columns(2).FindNext(r) 'redéfinit la recherche r (recherche suivante)
        Loop While Not r Is Nothing And r.Address <> pa 'boucle tant qu'il existe des occurrences ailleurs qu'en pa
    End If 'fin de la condition 1
    'si nb n'est pas nul, définit le message
    If nb > 0 Then mes = IIf(mes = "", nb & " " & cel.Value & ",", mes & Chr(13) & nb & " " & cel.Value & ",")
Next cel 'prochaine cellule de la boucle
Columns(2).Interior.ColorIndex = xlNone 'supprime la couleur rouge dans la colonne B
Application.ScreenUpdating = True 'affiche les changements à l'écran
MsgBox mes 'affiche le message mes
End Sub
 

Guapo33

XLDnaute Nouveau
Re : Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Bonjour
Encore merci pour cette macro.
Par contre je rencontre un problème,
Code:
Erreur d'exécution "91":
Variable objet ou variable de bloc With non définie
J'ai regardé mais je ne trouve pas
Pierre
 

CISCO

XLDnaute Barbatruc
Re : Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Re,

une possibilité en pièce jointe, avec une colonne intermédiaire et la fonction XL4 LIRE.CELLULE, à utiliser forcément par l'intermédiaire du gestionnaire de noms :
Lire = LIRE.CELLULE(23;Feuil1!$C1)

@ plus
 

Pièces jointes

  • Guapo33.xlsm
    15.1 KB · Affichages: 70

Robert

XLDnaute Barbatruc
Repose en paix
Re : Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Bonjour le fil, bonjour le forum,

Bonjour
Encore merci pour cette macro.
Par contre je rencontre un problème,
Code:
Erreur d'exécution "91":
Variable objet ou variable de bloc With non définie
J'ai regardé mais je ne trouve pas
Pierre

Chez moi ça marche... Le fichier :

 

Pièces jointes

  • Guapo_v01.xls
    35.5 KB · Affichages: 51

Guapo33

XLDnaute Nouveau
Re : Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Bonjour Robert
Je viens d'essayer ta macro, ça marche, mais comment afficher le résultat dans la cellule le nombre correspondant soit à GRAD ou à ELEVE ?
Merci
 

Guapo33

XLDnaute Nouveau
Re : Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Bonjour CISCO,
je suis entrain de regarder la formule SOMMEPROD, mais il faut que je change par VRAI OU FAUX pour avoir le résultat ?
Cela ne m'arrange pas trop, j'aimerai que des que je mets la Police en Barré que cela se calcul automatiquement.
Autrement c'est très gentil a vous de vous creusez la tête.
Merci encore
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Bonjour le fil, bonjour le forum,

Bonjour Robert
Je viens d'essayer ta macro, ça marche, mais comment afficher le résultat dans la cellule le nombre correspondant soit à GRAD ou à ELEVE ?
Merci
Le code modifié :
Code:
Option Explicit

Sub Macro1()
Dim cel As Range 'déclare la variable cel (CELlule)
Dim r As Range 'déclare la variable r (Recherche)
Dim nb As Integer 'déclare la variable nb (Nombre de cellules Barrées)
Dim pa As String 'déclare la variable pa (Première Adresse)
Dim r2 As Range 'déclare la variable r2

Application.ScreenUpdating = False 'masque les changements à l'écran
For Each cel In Range("B1:B" & Cells(Application.Rows.Count, 2).End(xlUp).Row) 'boucle sur toutes les cellules éditées cel de la colonne B
    nb = 0 'initialise le nombre de cellules barrées
    Set r2 = Columns(1).Find(cel.Value, , xlValues, xlWhole)
    If cel.Font.Strikethrough = True And cel.Interior.ColorIndex <> 3 Then 'condition 1 : si la cellule est barrée et si elle n'est pas colorée en rouge
        Set r = Columns(2).Find(cel.Value, , xlValues, xlWhole) 'définit la recherche
        pa = r.Address 'définit la première adresse
        Do 'ecécute
            If r.Font.Strikethrough = True Then 'condition 2 : si l'occurrence trouvée est barrée
                r.Interior.ColorIndex = 3 'colore l'occurrence trouvée de rouge
                nb = nb + 1 'incrémente nb
            End If 'fin de la condition 2
            Set r = Columns(2).FindNext(r) 'redéfinit la recherche r (recherche suivante)
        Loop While Not r Is Nothing And r.Address <> pa 'boucle tant qu'il existe des occurrences ailleurs qu'en pa
    End If 'fin de la condition 1
    'si nb n'est pas nul, définit le message
    If nb > 0 Then r2.Offset(0, 1).Value = nb
Next cel 'prochaine cellule de la boucle
Columns(2).Interior.ColorIndex = xlNone 'supprime la couleur rouge dans la colonne B
Application.ScreenUpdating = True 'affiche les changements à l'écran
End Sub
 

PrinceCorwin

XLDnaute Occasionnel
Re : Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Bonjour tous,
Cisco,

Le bouton qui est juste en bas à droite, Comme lorsque tu mets un fichier joint.
Capture.jpg.

Le tout premier bouton sur la troisième barre.
@Plus
 

Pièces jointes

  • Capture.jpg
    Capture.jpg
    11.2 KB · Affichages: 71
  • Capture.jpg
    Capture.jpg
    11.2 KB · Affichages: 73

CISCO

XLDnaute Barbatruc
Re : Compter des cellules dont le texte n'est pas barré et qui ont le meme contenue

Bonsoir

Merci PrinceCorwin

Malheureusement, je n'ai pas le même écran que toi.




@ plus
 

Pièces jointes

  • Ecran.doc
    159.5 KB · Affichages: 48

Discussions similaires

Réponses
17
Affichages
417