comment puis je compter la lettre "A" dans un tableau excel ?
4 réponses
gobinche
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me
permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire
dans une colonne.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
garnote
Saut gobinche,
Un exemple : =NB.SI(A1:A16;"A")
Serge
"gobinche" a écrit dans le message de news:
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire dans une colonne.
Vous en remerciant par avance.
Salutations distinguées.
Saut gobinche,
Un exemple :
=NB.SI(A1:A16;"A")
Serge
"gobinche" <gobinche@discussions.microsoft.com> a écrit dans le message de
news: FCBBB0E4-9AD9-4B91-BD00-531A97287B41@microsoft.com...
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me
permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu
inscire
dans une colonne.
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire dans une colonne.
Vous en remerciant par avance.
Salutations distinguées.
Hervé
Bonsoir, Si la lettre se trouve une seule fois dans la cellule (si elle est double, la seconde ne sera pas comptée) :
Sub Compter() Dim Plage As Range Dim Lettre As String
Lettre = "*C*" 'colonne A Set Plage = ActiveSheet.Columns(1) MsgBox "La lettre '" & _ Lettre & "' a été trouvée " & _ Application.CountIf(Plage, Chaine) & " fois."
Set Plage = Nothing End Sub
Avec la proc suivante, tout les caractères de chaque cellule de la plage sont vérifiés, donc elle retourne exactement le nombre de lettres trouvées, mais c'est un peu plus lent :
Sub Compter() Dim Pos As Integer Dim NBfois As Integer Dim Debut As Integer Dim Chaine As String Dim Plage As Range Dim I As Integer
Chaine = "C" Set Plage = ActiveSheet.[A1:A20]
For I = 1 To Plage.Count Do If Pos = 0 Then Debut = 1 Else Debut = Pos + 1 Pos = InStr(Debut, Plage(I), Chaine) If Pos = 1 Then NBfois = NBfois + 1 Else If Pos > 1 Then If Mid([A1], Pos - 1, 1) <> 1 Then NBfois = NBfois + 1 End If End If End If Loop While Pos <> 0 Next I
MsgBox "La chaine '" & _ Chaine & "' a été trouvée " & _ NBfois & " fois."
Set Plage = Nothing End Sub
Hervé.
"gobinche" a écrit dans le message de news:
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire dans une colonne.
Vous en remerciant par avance.
Salutations distinguées.
Bonsoir,
Si la lettre se trouve une seule fois dans la cellule (si elle est double,
la seconde ne sera pas comptée) :
Sub Compter()
Dim Plage As Range
Dim Lettre As String
Lettre = "*C*"
'colonne A
Set Plage = ActiveSheet.Columns(1)
MsgBox "La lettre '" & _
Lettre & "' a été trouvée " & _
Application.CountIf(Plage, Chaine) & " fois."
Set Plage = Nothing
End Sub
Avec la proc suivante, tout les caractères de chaque cellule de la plage
sont vérifiés, donc elle retourne exactement le nombre de lettres trouvées,
mais c'est un peu plus lent :
Sub Compter()
Dim Pos As Integer
Dim NBfois As Integer
Dim Debut As Integer
Dim Chaine As String
Dim Plage As Range
Dim I As Integer
Chaine = "C"
Set Plage = ActiveSheet.[A1:A20]
For I = 1 To Plage.Count
Do
If Pos = 0 Then Debut = 1 Else Debut = Pos + 1
Pos = InStr(Debut, Plage(I), Chaine)
If Pos = 1 Then
NBfois = NBfois + 1
Else
If Pos > 1 Then
If Mid([A1], Pos - 1, 1) <> 1 Then
NBfois = NBfois + 1
End If
End If
End If
Loop While Pos <> 0
Next I
MsgBox "La chaine '" & _
Chaine & "' a été trouvée " & _
NBfois & " fois."
Set Plage = Nothing
End Sub
Hervé.
"gobinche" <gobinche@discussions.microsoft.com> a écrit dans le message de
news: FCBBB0E4-9AD9-4B91-BD00-531A97287B41@microsoft.com...
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me
permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu
inscire
dans une colonne.
Bonsoir, Si la lettre se trouve une seule fois dans la cellule (si elle est double, la seconde ne sera pas comptée) :
Sub Compter() Dim Plage As Range Dim Lettre As String
Lettre = "*C*" 'colonne A Set Plage = ActiveSheet.Columns(1) MsgBox "La lettre '" & _ Lettre & "' a été trouvée " & _ Application.CountIf(Plage, Chaine) & " fois."
Set Plage = Nothing End Sub
Avec la proc suivante, tout les caractères de chaque cellule de la plage sont vérifiés, donc elle retourne exactement le nombre de lettres trouvées, mais c'est un peu plus lent :
Sub Compter() Dim Pos As Integer Dim NBfois As Integer Dim Debut As Integer Dim Chaine As String Dim Plage As Range Dim I As Integer
Chaine = "C" Set Plage = ActiveSheet.[A1:A20]
For I = 1 To Plage.Count Do If Pos = 0 Then Debut = 1 Else Debut = Pos + 1 Pos = InStr(Debut, Plage(I), Chaine) If Pos = 1 Then NBfois = NBfois + 1 Else If Pos > 1 Then If Mid([A1], Pos - 1, 1) <> 1 Then NBfois = NBfois + 1 End If End If End If Loop While Pos <> 0 Next I
MsgBox "La chaine '" & _ Chaine & "' a été trouvée " & _ NBfois & " fois."
Set Plage = Nothing End Sub
Hervé.
"gobinche" a écrit dans le message de news:
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire dans une colonne.
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire dans une colonne.
"gobinche" <gobinche@discussions.microsoft.com> a écrit dans le message de news:
FCBBB0E4-9AD9-4B91-BD00-531A97287B41@microsoft.com...
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me
permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire
dans une colonne.
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire dans une colonne.
Vous en remerciant par avance.
Salutations distinguées.
ChrisV
Bonjour Gobinche,
Si chaque cellule de la plage de donnée (nommée ici Zn) ne contient pas qu'un seul caractère, NB.SI() ne renverra pas les résultats souhaités...
Essaie les matricielle suivantes: (à saisir sans les { } et valider par Ctrl+Shift+Entrée)
nombre de A {=SOMME(NBCAR(Zn))-SOMME(NBCAR(SUBSTITUE(Zn;"A";"")))}
nombre de A et a {=SOMME(NBCAR(Zn))-SOMME(NBCAR(SUBSTITUE(SUBSTITUE(Zn;"A";"");"a";"")))}
ChrisV
"gobinche" a écrit dans le message de news:
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire dans une colonne.
Vous en remerciant par avance.
Salutations distinguées.
Bonjour Gobinche,
Si chaque cellule de la plage de donnée (nommée ici Zn) ne contient pas
qu'un seul caractère, NB.SI() ne renverra pas les résultats souhaités...
Essaie les matricielle suivantes:
(à saisir sans les { } et valider par Ctrl+Shift+Entrée)
nombre de A
{=SOMME(NBCAR(Zn))-SOMME(NBCAR(SUBSTITUE(Zn;"A";"")))}
nombre de A et a
{=SOMME(NBCAR(Zn))-SOMME(NBCAR(SUBSTITUE(SUBSTITUE(Zn;"A";"");"a";"")))}
ChrisV
"gobinche" <gobinche@discussions.microsoft.com> a écrit dans le message de
news: FCBBB0E4-9AD9-4B91-BD00-531A97287B41@microsoft.com...
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me
permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu
inscire
dans une colonne.
Si chaque cellule de la plage de donnée (nommée ici Zn) ne contient pas qu'un seul caractère, NB.SI() ne renverra pas les résultats souhaités...
Essaie les matricielle suivantes: (à saisir sans les { } et valider par Ctrl+Shift+Entrée)
nombre de A {=SOMME(NBCAR(Zn))-SOMME(NBCAR(SUBSTITUE(Zn;"A";"")))}
nombre de A et a {=SOMME(NBCAR(Zn))-SOMME(NBCAR(SUBSTITUE(SUBSTITUE(Zn;"A";"");"a";"")))}
ChrisV
"gobinche" a écrit dans le message de news:
a l'interieur d'un tableau excel, je souhaiterais connaitre la formule me permettra de compter combien de lettre "A" ou" B" ou" C..." on a pu inscire dans une colonne.