A1 : 1
A2 : 10
A3 : 8
A4 : 15, 10, 8 La cellule A4 contient 3 nombres séparés par une virgule.
A5 : 8
A6 : 6
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois
je trouve le nombre 6 : 1 fois
je trouve le nombre 8 : 3 fois
je trouve le nombre 10: 2 fois
je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec le
paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK
A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste.
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
MichD
Bonjour,
Pour trouver le nombre de 1 dans la plage de cellules: Si tu veux trouver d'autres valeurs, tu modifies dans la formule le 1 pour le chiffre à identifier.
Tu peux utiliser cette formule : =SOMMEPROD((NBCAR(A1:A6)-NBCAR(SUBSTITUE(A1:A6;1;""))))
Bonjour,
Pour trouver le nombre de 1 dans la plage de cellules:
Si tu veux trouver d'autres valeurs, tu modifies dans la formule le 1 pour le chiffre à
identifier.
Tu peux utiliser cette formule : =SOMMEPROD((NBCAR(A1:A6)-NBCAR(SUBSTITUE(A1:A6;1;""))))
Pour trouver le nombre de 1 dans la plage de cellules: Si tu veux trouver d'autres valeurs, tu modifies dans la formule le 1 pour le chiffre à identifier.
Tu peux utiliser cette formule : =SOMMEPROD((NBCAR(A1:A6)-NBCAR(SUBSTITUE(A1:A6;1;""))))
gmlsteph
Bonjour,
C'est tout à fait normal, la cellule A4 ne contient pas une valeur mais u ne chaine de caractères: "15, 10, 8"
Cordialement.
-- LSteph
Le vendredi 11 mai 2012 15:30:01 UTC+2, Andre a écrit :
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois je trouve le nombre 6 : 1 fois je trouve le nombre 8 : 3 fois je trouve le nombre 10: 2 fois je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec l e paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste .
Merci pour votre aide
André
Bonjour,
C'est tout à fait normal, la cellule A4 ne contient pas une valeur mais u ne chaine de caractères: "15, 10, 8"
Cordialement.
--
LSteph
Le vendredi 11 mai 2012 15:30:01 UTC+2, Andre a écrit :
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois
je trouve le nombre 6 : 1 fois
je trouve le nombre 8 : 3 fois
je trouve le nombre 10: 2 fois
je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec l e
paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK
A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste .
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois je trouve le nombre 6 : 1 fois je trouve le nombre 8 : 3 fois je trouve le nombre 10: 2 fois je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec l e paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste .
Merci pour votre aide
André
bcar
Bonjour,
voilà toujours un début de réponse, je ne sais pas si cela répondra parfaitement à ta problématique mais bon :
On admettra pour la suite que le séparateur des nombres dans une liste est le caractère "," et qu'il n'y a pas d'espace entre la virgule et le nombre suivant (c'est possible de le gérer mais plus compliqué)
Soit - les cellules A1-An remplies chacune avec une liste de nombre - en B1 le nombre dont tu veux connaitre l’occurrence
- la formule suivante calcule le nombre d’occurrence de "b1" dans la cellule A1 : =(NBCAR(A1)+2 -NBCAR(SUBSTITUE(","&A1&"," ; ","&B1&"," ; ""))) /(NBCAR(B1)+2) (on ajoute un caractère "," comme caractère de début et de terminaison des listes (d'où les "+2")
- la formule suivante calcule le nombre d’occurrence de "b1" dans A1:A100 {=SOMME((NBCAR(A1:A100)+2 -NBCAR(SUBSTITUE(","&A1:A100&"," ;","&B1&"," ; ""))) /(NBCAR(B1)+2))} ({} car Validation matricielle (obtenue par ctrl+maj+enter))
cela alimentera peut être un peu ta réflexion.
Le 11/05/2012 15:30, Andre a écrit :
Bonjour,
Petit casse tête :
Soit les valeurs sur une feuille
A1 : 1 A2 : 10 A3 : 8 A4 : 15, 10, 8 La cellule A4 contient 3 nombres séparés par une virgule. A5 : 8 A6 : 6
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois je trouve le nombre 6 : 1 fois je trouve le nombre 8 : 3 fois je trouve le nombre 10: 2 fois je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec le paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste.
Merci pour votre aide
André
Bonjour,
voilà toujours un début de réponse, je ne sais pas si cela répondra
parfaitement à ta problématique mais bon :
On admettra pour la suite que le séparateur des nombres dans une liste
est le caractère "," et qu'il n'y a pas d'espace entre la virgule et le
nombre suivant (c'est possible de le gérer mais plus compliqué)
Soit
- les cellules A1-An remplies chacune avec une liste de nombre
- en B1 le nombre dont tu veux connaitre l’occurrence
- la formule suivante calcule le nombre d’occurrence de "b1" dans la
cellule A1 :
=(NBCAR(A1)+2
-NBCAR(SUBSTITUE(","&A1&"," ; ","&B1&"," ; "")))
/(NBCAR(B1)+2)
(on ajoute un caractère "," comme caractère de début et de terminaison
des listes (d'où les "+2")
- la formule suivante calcule le nombre d’occurrence de "b1" dans A1:A100
{=SOMME((NBCAR(A1:A100)+2
-NBCAR(SUBSTITUE(","&A1:A100&"," ;","&B1&"," ; "")))
/(NBCAR(B1)+2))}
({} car Validation matricielle (obtenue par ctrl+maj+enter))
cela alimentera peut être un peu ta réflexion.
Le 11/05/2012 15:30, Andre a écrit :
Bonjour,
Petit casse tête :
Soit les valeurs sur une feuille
A1 : 1
A2 : 10
A3 : 8
A4 : 15, 10, 8 La cellule A4 contient 3 nombres séparés par une virgule.
A5 : 8
A6 : 6
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois
je trouve le nombre 6 : 1 fois
je trouve le nombre 8 : 3 fois
je trouve le nombre 10: 2 fois
je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec le
paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK
A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste.
voilà toujours un début de réponse, je ne sais pas si cela répondra parfaitement à ta problématique mais bon :
On admettra pour la suite que le séparateur des nombres dans une liste est le caractère "," et qu'il n'y a pas d'espace entre la virgule et le nombre suivant (c'est possible de le gérer mais plus compliqué)
Soit - les cellules A1-An remplies chacune avec une liste de nombre - en B1 le nombre dont tu veux connaitre l’occurrence
- la formule suivante calcule le nombre d’occurrence de "b1" dans la cellule A1 : =(NBCAR(A1)+2 -NBCAR(SUBSTITUE(","&A1&"," ; ","&B1&"," ; ""))) /(NBCAR(B1)+2) (on ajoute un caractère "," comme caractère de début et de terminaison des listes (d'où les "+2")
- la formule suivante calcule le nombre d’occurrence de "b1" dans A1:A100 {=SOMME((NBCAR(A1:A100)+2 -NBCAR(SUBSTITUE(","&A1:A100&"," ;","&B1&"," ; ""))) /(NBCAR(B1)+2))} ({} car Validation matricielle (obtenue par ctrl+maj+enter))
cela alimentera peut être un peu ta réflexion.
Le 11/05/2012 15:30, Andre a écrit :
Bonjour,
Petit casse tête :
Soit les valeurs sur une feuille
A1 : 1 A2 : 10 A3 : 8 A4 : 15, 10, 8 La cellule A4 contient 3 nombres séparés par une virgule. A5 : 8 A6 : 6
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois je trouve le nombre 6 : 1 fois je trouve le nombre 8 : 3 fois je trouve le nombre 10: 2 fois je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec le paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste.
Merci pour votre aide
André
Jacquouille
Bonsoir Denis Dans l'exemple donné, je teste sur le 10; Il me donne 4 comme réponse. Peux-tu confirmer chez toi, svp? grand merci et bonne soirée
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "MichD" a écrit dans le message de groupe de discussion : joj6s9$dj8$
Bonjour,
Pour trouver le nombre de 1 dans la plage de cellules: Si tu veux trouver d'autres valeurs, tu modifies dans la formule le 1 pour le chiffre à identifier.
Tu peux utiliser cette formule : =SOMMEPROD((NBCAR(A1:A6)-NBCAR(SUBSTITUE(A1:A6;1;""))))
Bonsoir Denis
Dans l'exemple donné, je teste sur le 10; Il me donne 4 comme réponse.
Peux-tu confirmer chez toi, svp?
grand merci et bonne soirée
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
joj6s9$dj8$1@speranza.aioe.org...
Bonjour,
Pour trouver le nombre de 1 dans la plage de cellules:
Si tu veux trouver d'autres valeurs, tu modifies dans la formule le 1 pour
le chiffre à
identifier.
Tu peux utiliser cette formule :
=SOMMEPROD((NBCAR(A1:A6)-NBCAR(SUBSTITUE(A1:A6;1;""))))
Bonsoir Denis Dans l'exemple donné, je teste sur le 10; Il me donne 4 comme réponse. Peux-tu confirmer chez toi, svp? grand merci et bonne soirée
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "MichD" a écrit dans le message de groupe de discussion : joj6s9$dj8$
Bonjour,
Pour trouver le nombre de 1 dans la plage de cellules: Si tu veux trouver d'autres valeurs, tu modifies dans la formule le 1 pour le chiffre à identifier.
Tu peux utiliser cette formule : =SOMMEPROD((NBCAR(A1:A6)-NBCAR(SUBSTITUE(A1:A6;1;""))))
MichD
La réponse est bien adaptée à ce que tu demandes à la formule.
Dans la section "Substitute" de la formule, si tu demandes de substituer un chiffre de 2 caractères, pour chaque chiffre, tu "substitute" 2 caractères au lieu d'un seul. Par conséquent, la réponse sera le double de ce qui est recherché.
Tu n'as qu'à diviser le résultat obtenu par la formule par le nombre de caractères de ton chiffre. dans ton cas, cela donnerait ceci :
La réponse est bien adaptée à ce que tu demandes à la formule.
Dans la section "Substitute" de la formule, si tu demandes de substituer un chiffre de 2
caractères,
pour chaque chiffre, tu "substitute" 2 caractères au lieu d'un seul. Par conséquent, la
réponse sera le double de ce qui est recherché.
Tu n'as qu'à diviser le résultat obtenu par la formule par le nombre de caractères de ton
chiffre.
dans ton cas, cela donnerait ceci :
La réponse est bien adaptée à ce que tu demandes à la formule.
Dans la section "Substitute" de la formule, si tu demandes de substituer un chiffre de 2 caractères, pour chaque chiffre, tu "substitute" 2 caractères au lieu d'un seul. Par conséquent, la réponse sera le double de ce qui est recherché.
Tu n'as qu'à diviser le résultat obtenu par la formule par le nombre de caractères de ton chiffre. dans ton cas, cela donnerait ceci :
Finesse dont je vais essayer de me souvenir. Encore merci Bonne nuit Jacques
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "MichD" a écrit dans le message de groupe de discussion : jojm6g$opc$
La réponse est bien adaptée à ce que tu demandes à la formule.
Dans la section "Substitute" de la formule, si tu demandes de substituer un chiffre de 2 caractères, pour chaque chiffre, tu "substitute" 2 caractères au lieu d'un seul. Par conséquent, la réponse sera le double de ce qui est recherché.
Tu n'as qu'à diviser le résultat obtenu par la formule par le nombre de caractères de ton chiffre. dans ton cas, cela donnerait ceci :
Finesse dont je vais essayer de me souvenir.
Encore merci
Bonne nuit
Jacques
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
jojm6g$opc$1@speranza.aioe.org...
La réponse est bien adaptée à ce que tu demandes à la formule.
Dans la section "Substitute" de la formule, si tu demandes de substituer un
chiffre de 2
caractères,
pour chaque chiffre, tu "substitute" 2 caractères au lieu d'un seul. Par
conséquent, la
réponse sera le double de ce qui est recherché.
Tu n'as qu'à diviser le résultat obtenu par la formule par le nombre de
caractères de ton
chiffre.
dans ton cas, cela donnerait ceci :
Finesse dont je vais essayer de me souvenir. Encore merci Bonne nuit Jacques
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "MichD" a écrit dans le message de groupe de discussion : jojm6g$opc$
La réponse est bien adaptée à ce que tu demandes à la formule.
Dans la section "Substitute" de la formule, si tu demandes de substituer un chiffre de 2 caractères, pour chaque chiffre, tu "substitute" 2 caractères au lieu d'un seul. Par conséquent, la réponse sera le double de ce qui est recherché.
Tu n'as qu'à diviser le résultat obtenu par la formule par le nombre de caractères de ton chiffre. dans ton cas, cela donnerait ceci :
j'ai utilisé la méthode "scripting.dictionary" il se peut que tu doives activer la bibliothèque Microsoft Scripting Runtime au menu(VBA)OutilsRéférences j'ai mis le résultat du tableau de récapitulation en colonne G:H
[code]
Dim data, tx, tablo()
Sub Test() Dim i As Integer, c As Range Set data = CreateObject("scripting.dictionary")
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) tx = c.Value If Not IsError(Application.Find(",", tx)) Then sStr = Split(tx, ",") For i = LBound(sStr) To UBound(sStr) tx = Application.Trim(sStr(i)) * 1 liste Next Else liste End If Next c
Range("G1").Resize(UBound(tablo, 2), 2) = Application.Transpose(tablo) ' <------ RESULTAT Set data = Nothing End Sub
Private Sub liste() Dim y As Integer, n As Integer If Not data.Exists(tx) Then data.Add tx, tx y = UBound(data.keys) + 1 ReDim Preserve tablo(1 To 2, 1 To y) tablo(1, y) = tx tablo(2, y) = 1 Else n = Application.Match(tx, data.keys, 0) tablo(2, n) = tablo(2, n) + 1 End If End Sub
[/code]
-- isabelle
Le 2012-05-11 09:30, Andre a écrit :
Bonjour,
Petit casse tête :
Soit les valeurs sur une feuille
A1 : 1 A2 : 10 A3 : 8 A4 : 15, 10, 8 La cellule A4 contient 3 nombres séparés par une virgule. A5 : 8 A6 : 6
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois je trouve le nombre 6 : 1 fois je trouve le nombre 8 : 3 fois je trouve le nombre 10: 2 fois je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec le paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste.
Merci pour votre aide
André
bonjour André,
j'ai utilisé la méthode "scripting.dictionary"
il se peut que tu doives activer la bibliothèque Microsoft Scripting Runtime au menu(VBA)OutilsRéférences
j'ai mis le résultat du tableau de récapitulation en colonne G:H
[code]
Dim data, tx, tablo()
Sub Test()
Dim i As Integer, c As Range
Set data = CreateObject("scripting.dictionary")
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
tx = c.Value
If Not IsError(Application.Find(",", tx)) Then
sStr = Split(tx, ",")
For i = LBound(sStr) To UBound(sStr)
tx = Application.Trim(sStr(i)) * 1
liste
Next
Else
liste
End If
Next c
Range("G1").Resize(UBound(tablo, 2), 2) = Application.Transpose(tablo) ' <------ RESULTAT
Set data = Nothing
End Sub
Private Sub liste()
Dim y As Integer, n As Integer
If Not data.Exists(tx) Then
data.Add tx, tx
y = UBound(data.keys) + 1
ReDim Preserve tablo(1 To 2, 1 To y)
tablo(1, y) = tx
tablo(2, y) = 1
Else
n = Application.Match(tx, data.keys, 0)
tablo(2, n) = tablo(2, n) + 1
End If
End Sub
[/code]
--
isabelle
Le 2012-05-11 09:30, Andre a écrit :
Bonjour,
Petit casse tête :
Soit les valeurs sur une feuille
A1 : 1
A2 : 10
A3 : 8
A4 : 15, 10, 8 La cellule A4 contient 3 nombres séparés par une virgule.
A5 : 8
A6 : 6
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois
je trouve le nombre 6 : 1 fois
je trouve le nombre 8 : 3 fois
je trouve le nombre 10: 2 fois
je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec le
paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK
A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste.
j'ai utilisé la méthode "scripting.dictionary" il se peut que tu doives activer la bibliothèque Microsoft Scripting Runtime au menu(VBA)OutilsRéférences j'ai mis le résultat du tableau de récapitulation en colonne G:H
[code]
Dim data, tx, tablo()
Sub Test() Dim i As Integer, c As Range Set data = CreateObject("scripting.dictionary")
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row) tx = c.Value If Not IsError(Application.Find(",", tx)) Then sStr = Split(tx, ",") For i = LBound(sStr) To UBound(sStr) tx = Application.Trim(sStr(i)) * 1 liste Next Else liste End If Next c
Range("G1").Resize(UBound(tablo, 2), 2) = Application.Transpose(tablo) ' <------ RESULTAT Set data = Nothing End Sub
Private Sub liste() Dim y As Integer, n As Integer If Not data.Exists(tx) Then data.Add tx, tx y = UBound(data.keys) + 1 ReDim Preserve tablo(1 To 2, 1 To y) tablo(1, y) = tx tablo(2, y) = 1 Else n = Application.Match(tx, data.keys, 0) tablo(2, n) = tablo(2, n) + 1 End If End Sub
[/code]
-- isabelle
Le 2012-05-11 09:30, Andre a écrit :
Bonjour,
Petit casse tête :
Soit les valeurs sur une feuille
A1 : 1 A2 : 10 A3 : 8 A4 : 15, 10, 8 La cellule A4 contient 3 nombres séparés par une virgule. A5 : 8 A6 : 6
Question : Comment compter le nombre d'occurence de chaque nombre
Dans l'exemple
je trouve le nombre 1 : 1 fois je trouve le nombre 6 : 1 fois je trouve le nombre 8 : 3 fois je trouve le nombre 10: 2 fois je trouve le nombre 15: 1 fois
Comment puis-je compter ?
J'ai déjà essayé cross table, vlookup, une macro
Le problème avec la macro, si j'utilise la fonction " .Find( ) " avec le paramètre xlPart, il trouve le nombre "1" 4 fois.
A1 : 1 le 1 ici ==> OK A2 : 10 le 1 ici ==> pas bon.
Si j'utilise xlWhole, il ne trouve pas le nombre 10 au milieu de la liste.
Merci pour votre aide
André
bcar
Je reprend le message d'"Andre" trouvé sur un forum web suite à cette proposition (réponse en dessous)
Bonjour, Je l'emploi peut être mal, mais cela n'a pas l'air de fonctionner. J'utilise Excel 2003 version Anglais. J'ai mis à jour votre formule avec les termes anglais. Ce qui donne:
Lorsque j'encode A1 5, 6 A2 5, 6 et A3 4, 5 B1 5 C1 votre formule. Resultat : 5. Je mets en attachement mon fichier Excel. Il contient une macro. Je ne suis pas encore certain à 100% s'il fonctionne dans tous les cas. Mais certainnement à 95%.
Merci beaucoup pour votre aide André
Bonjour,
vous trouvez 5 (ou plutôt 4.33...) car il y a une erreur de parenthésage dans votre formule ce n'est pas =(LEN(A1)+2)-LEN(SUBSTITUTE(","&A1&",";","&B1&",";""))/(LEN(B1)+2) mais =(LEN(A1)+2-LEN(SUBSTITUTE(","&A1&",";","&B1&",";"")))/(LEN(B1)+2) qui donnera bien 1 dans le cas évoqué ici
pour la suite du calcul (sur toute la colonne et pas uniquement sur une cellule), voir la réponse initiale.
bcar
Je reprend le message d'"Andre" trouvé sur un forum web suite à cette
proposition (réponse en dessous)
Bonjour,
Je l'emploi peut être mal, mais cela n'a pas l'air de fonctionner.
J'utilise Excel 2003 version Anglais. J'ai mis à jour votre formule
avec les
termes anglais. Ce qui donne:
Lorsque j'encode
A1 5, 6
A2 5, 6 et
A3 4, 5
B1 5
C1 votre formule. Resultat : 5.
Je mets en attachement mon fichier Excel. Il contient une macro.
Je ne suis pas encore certain à 100% s'il fonctionne dans tous les cas.
Mais certainnement à 95%.
Merci beaucoup pour votre aide
André
Bonjour,
vous trouvez 5 (ou plutôt 4.33...) car il y a une erreur de parenthésage
dans votre formule
ce n'est pas
=(LEN(A1)+2)-LEN(SUBSTITUTE(","&A1&",";","&B1&",";""))/(LEN(B1)+2)
mais
=(LEN(A1)+2-LEN(SUBSTITUTE(","&A1&",";","&B1&",";"")))/(LEN(B1)+2)
qui donnera bien 1 dans le cas évoqué ici
pour la suite du calcul (sur toute la colonne et pas uniquement sur une
cellule), voir la réponse initiale.
Je reprend le message d'"Andre" trouvé sur un forum web suite à cette proposition (réponse en dessous)
Bonjour, Je l'emploi peut être mal, mais cela n'a pas l'air de fonctionner. J'utilise Excel 2003 version Anglais. J'ai mis à jour votre formule avec les termes anglais. Ce qui donne:
Lorsque j'encode A1 5, 6 A2 5, 6 et A3 4, 5 B1 5 C1 votre formule. Resultat : 5. Je mets en attachement mon fichier Excel. Il contient une macro. Je ne suis pas encore certain à 100% s'il fonctionne dans tous les cas. Mais certainnement à 95%.
Merci beaucoup pour votre aide André
Bonjour,
vous trouvez 5 (ou plutôt 4.33...) car il y a une erreur de parenthésage dans votre formule ce n'est pas =(LEN(A1)+2)-LEN(SUBSTITUTE(","&A1&",";","&B1&",";""))/(LEN(B1)+2) mais =(LEN(A1)+2-LEN(SUBSTITUTE(","&A1&",";","&B1&",";"")))/(LEN(B1)+2) qui donnera bien 1 dans le cas évoqué ici
pour la suite du calcul (sur toute la colonne et pas uniquement sur une cellule), voir la réponse initiale.