Calculer un % identique du contenu d'une cellule avec une autre
Fermé
F60lebaladinverni
Messages postés
128
Date d'inscription
samedi 28 janvier 2017
Statut
Membre
Dernière intervention
16 juin 2024
-
Modifié le 9 févr. 2021 à 17:11
F60lebaladinverni Messages postés 128 Date d'inscription samedi 28 janvier 2017 Statut Membre Dernière intervention 16 juin 2024 - 10 févr. 2021 à 16:54
F60lebaladinverni Messages postés 128 Date d'inscription samedi 28 janvier 2017 Statut Membre Dernière intervention 16 juin 2024 - 10 févr. 2021 à 16:54
A voir également:
- Levenshtein excel
- Calculer une moyenne sur excel - Guide
- Aller à la ligne dans une cellule excel - Guide
- Word a trouvé du contenu illisible - Guide
- Excel cellule couleur si condition texte - Guide
- Verrouiller une cellule excel - Guide
5 réponses
DjiDji59430
Messages postés
4167
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
27 décembre 2024
682
9 févr. 2021 à 17:19
9 févr. 2021 à 17:19
Bonjour à tous,
T'explique comment tu trouves 83 % ?
Crdlmt
T'explique comment tu trouves 83 % ?
Crdlmt
F60lebaladinverni
Messages postés
128
Date d'inscription
samedi 28 janvier 2017
Statut
Membre
Dernière intervention
16 juin 2024
2
Modifié le 9 févr. 2021 à 18:11
Modifié le 9 févr. 2021 à 18:11
Bonjour,
En A1 : 5 caractères en commun avec A2 sur 6 (l'ordre étant respecté)
ça fait 83% :)
Cordialement
En A1 : 5 caractères en commun avec A2 sur 6 (l'ordre étant respecté)
ça fait 83% :)
Cordialement
via55
Messages postés
14506
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
27 décembre 2024
2 738
Modifié le 9 févr. 2021 à 18:46
Modifié le 9 févr. 2021 à 18:46
Bonsoir
Comment peut il se faire que A1 a 83% de correspondance avec A2 et que A2 a lui100% avec A1 ??? il y a quelque chose qui m'échappe là !
Ensuite quel est l’intérêt à calculer ces % ?
Comment peut il se faire que A1 a 83% de correspondance avec A2 et que A2 a lui100% avec A1 ??? il y a quelque chose qui m'échappe là !
Ensuite quel est l’intérêt à calculer ces % ?
F60lebaladinverni
Messages postés
128
Date d'inscription
samedi 28 janvier 2017
Statut
Membre
Dernière intervention
16 juin 2024
2
Modifié le 9 févr. 2021 à 18:47
Modifié le 9 févr. 2021 à 18:47
Parce que dans A2 (A1010) , il y a 5 caractères et que ces 5 caractères sont tous retrouvés dans l'ordre dans A1, d'où le 100%.
Dans A1 (A-1010), il y a 6 caractères, et on en retrouve que 5 sur les 6 dans l'ordre dans A2, d'où le 83%.
Mon raisonnement est-il mauvais ?
Dans A1 (A-1010), il y a 6 caractères, et on en retrouve que 5 sur les 6 dans l'ordre dans A2, d'où le 83%.
Mon raisonnement est-il mauvais ?
DjiDji59430
Messages postés
4167
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
27 décembre 2024
682
9 févr. 2021 à 18:52
9 févr. 2021 à 18:52
et comment tu trouves 83 % entre a1010 et a1011 ?
via55
Messages postés
14506
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
27 décembre 2024
2 738
Modifié le 9 févr. 2021 à 19:09
Modifié le 9 févr. 2021 à 19:09
Je ne sais pas si ton raisonnement est mauvais, tout dépend à quoi cela va te servir, mais justement tu ne réponds pas à ma 2eme question, c'est cette réponse qui conditionne tout à mon sens
Et je rejoins l'interrogation de DjiDji comment avec une correspondance de 4/5 tu trouve 83% eu lieu de 80% ?
Et à ce moment quelle est la raison de retenir plutôt les correspondances à 83 % que celles à 80% ?
Si tu veux une aide efficace et éviter qu'on tourne des heures autour du pot fournis ton fichier concret qui doit être plus étoffé et différent que celui donné en exemple et le pourquoi de ta recherche de calcul
Et je rejoins l'interrogation de DjiDji comment avec une correspondance de 4/5 tu trouve 83% eu lieu de 80% ?
Et à ce moment quelle est la raison de retenir plutôt les correspondances à 83 % que celles à 80% ?
Si tu veux une aide efficace et éviter qu'on tourne des heures autour du pot fournis ton fichier concret qui doit être plus étoffé et différent que celui donné en exemple et le pourquoi de ta recherche de calcul
F60lebaladinverni
Messages postés
128
Date d'inscription
samedi 28 janvier 2017
Statut
Membre
Dernière intervention
16 juin 2024
2
>
via55
Messages postés
14506
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
27 décembre 2024
9 févr. 2021 à 20:26
9 févr. 2021 à 20:26
Pour répondre a DjiDji et via55, je suis confus, j’ai du avoir une hallucination, c’est bien 80% et pas 83%. Je sais pas comment j’ai fait mon compte pour arriver à 83%.... bref.
et comment tu trouves 83 % entre a1010 et a1011 ?
Donc c’est bien 80% : pour A1010 il y a 4 caractères sur 5 qui correspondent à A1011 donc 80%
mais justement tu ne réponds pas à ma 2eme question
Tout simplement, je ne l’avais pas vu.
Alors je n’ai pas encore de fichier concret à proposer parce que je viens d’avoir l’idée.
Pour expliquer l’objectif final :
Je récupère la comptabilité d’une société appelé Fichier des Ecritures Comptables que j’ouvre sur Excel.
L’objectif final étant, après avoir sélectionné tous les achats, de trouver des achats passés en doubles et payés en doubles.
L’exemple que je donne avec les A1010, A1011 etc... pourrait correspondre à un numéro de pièce. Le service comptable va enregistrer la facture sous le numéro A1010 une 1ère fois, puis A-1010 une 2eme fois (même si c’est involontaire).
Si donc, je trouve une correspondance de 80% sur un numéro de pièce, 80% sur le libellé de l’écriture etc..., je pourrais conclure avec x% de certitudes que la facture est doublée (et éventuellement le paiement).
Par contre je ne pourrai pas fournir de véritable FEC, j’espère que vous comprendrez...
Mais je pourrai essayer demain de créer un « faux » FEC se rapprochant de la réalité.
Merci de prendre le temps en tout cas de vous pencher sur ce problème.
et comment tu trouves 83 % entre a1010 et a1011 ?
Donc c’est bien 80% : pour A1010 il y a 4 caractères sur 5 qui correspondent à A1011 donc 80%
mais justement tu ne réponds pas à ma 2eme question
Tout simplement, je ne l’avais pas vu.
Alors je n’ai pas encore de fichier concret à proposer parce que je viens d’avoir l’idée.
Pour expliquer l’objectif final :
Je récupère la comptabilité d’une société appelé Fichier des Ecritures Comptables que j’ouvre sur Excel.
L’objectif final étant, après avoir sélectionné tous les achats, de trouver des achats passés en doubles et payés en doubles.
L’exemple que je donne avec les A1010, A1011 etc... pourrait correspondre à un numéro de pièce. Le service comptable va enregistrer la facture sous le numéro A1010 une 1ère fois, puis A-1010 une 2eme fois (même si c’est involontaire).
Si donc, je trouve une correspondance de 80% sur un numéro de pièce, 80% sur le libellé de l’écriture etc..., je pourrais conclure avec x% de certitudes que la facture est doublée (et éventuellement le paiement).
Par contre je ne pourrai pas fournir de véritable FEC, j’espère que vous comprendrez...
Mais je pourrai essayer demain de créer un « faux » FEC se rapprochant de la réalité.
Merci de prendre le temps en tout cas de vous pencher sur ce problème.
via55
Messages postés
14506
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
27 décembre 2024
2 738
>
F60lebaladinverni
Messages postés
128
Date d'inscription
samedi 28 janvier 2017
Statut
Membre
Dernière intervention
16 juin 2024
Modifié le 10 févr. 2021 à 00:30
Modifié le 10 févr. 2021 à 00:30
Je ne pense pas que le calcul de % seul, même en utilisant la méthode de Levenshtein indiquée par Eric, que je salue bien au passage ☺, te soit d'un grand secours :
en effet si A-1010 et A1010 donnent un % de 83% A-1010 et A51010 donnent aussi 83%
Si tu veux faire des essais avec la méthode de Levenshtein, voilà une fonction personnalisée trouvée sur Internet
A utiliser comme n'importe quelle fonction Excel avec la syntaxe :
=Levenshtein(première valeur ou cellule de la première valeur; seconde valeur ou cellule de la seconde valeur)
Cdlmnt
Via
en effet si A-1010 et A1010 donnent un % de 83% A-1010 et A51010 donnent aussi 83%
Si tu veux faire des essais avec la méthode de Levenshtein, voilà une fonction personnalisée trouvée sur Internet
Function Levenshtein(ByVal string1 As String, ByVal string2 As String) As Long Dim i As Long, j As Long, string1_length As Long, string2_length As Long Dim distance(0 To 60, 0 To 50) As Long, smStr1(1 To 60) As Long, smStr2(1 To 50) As Long Dim min1 As Long, min2 As Long, min3 As Long, minmin As Long, MaxL As Long string1_length = Len(string1): string2_length = Len(string2) distance(0, 0) = 0 For i = 1 To string1_length: distance(i, 0) = i: smStr1(i) = Asc(LCase(Mid$(string1, i, 1))): Next For j = 1 To string2_length: distance(0, j) = j: smStr2(j) = Asc(LCase(Mid$(string2, j, 1))): Next For i = 1 To string1_length For j = 1 To string2_length If smStr1(i) = smStr2(j) Then distance(i, j) = distance(i - 1, j - 1) Else min1 = distance(i - 1, j) + 1 min2 = distance(i, j - 1) + 1 min3 = distance(i - 1, j - 1) + 1 If min2 < min1 Then If min2 < min3 Then minmin = min2 Else minmin = min3 Else If min1 < min3 Then minmin = min1 Else minmin = min3 End If distance(i, j) = minmin End If Next Next MaxL = string1_length: If string2_length > MaxL Then MaxL = string2_length Levenshtein = 100 - CLng((distance(string1_length, string2_length) * 100) / MaxL) End Function
A utiliser comme n'importe quelle fonction Excel avec la syntaxe :
=Levenshtein(première valeur ou cellule de la première valeur; seconde valeur ou cellule de la seconde valeur)
Cdlmnt
Via
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 248
>
via55
Messages postés
14506
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
27 décembre 2024
Modifié le 10 févr. 2021 à 07:11
Modifié le 10 févr. 2021 à 07:11
Salut via,
il y en avait une dans le fichier que j'ai joint ;-)
mais tu as bien fait comme le demandeur ne m'a pas vu non plus...
eric
il y en avait une dans le fichier que j'ai joint ;-)
mais tu as bien fait comme le demandeur ne m'a pas vu non plus...
eric
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 248
Modifié le 9 févr. 2021 à 19:42
Modifié le 9 févr. 2021 à 19:42
Bonjour à tous,
la distance de Levenshtein pourrait t'intéresser : https://fr.wikipedia.org/wiki/Distance_de_Levenshtein#:~:text=La%20distance%20de%20Levenshtein%20est,une%20cha%C3%AEne%20%C3%A0%20l'autre.
Elle est égale au nombre minimal de caractères qu'il faut supprimer, insérer ou remplacer pour passer d’une chaîne à l’autre.
Tu as aussi la distance de Damerau-Levenstein plus fine mais plus lourde, peut-être pas utile dans ton cas.
https://www.cjoint.com/c/KBjsNd6U7xX
eric
la distance de Levenshtein pourrait t'intéresser : https://fr.wikipedia.org/wiki/Distance_de_Levenshtein#:~:text=La%20distance%20de%20Levenshtein%20est,une%20cha%C3%AEne%20%C3%A0%20l'autre.
Elle est égale au nombre minimal de caractères qu'il faut supprimer, insérer ou remplacer pour passer d’une chaîne à l’autre.
Tu as aussi la distance de Damerau-Levenstein plus fine mais plus lourde, peut-être pas utile dans ton cas.
https://www.cjoint.com/c/KBjsNd6U7xX
eric