Recherche de nombre qui n'apparaissent pas

Résolu/Fermé
Arnaud3140 - 2 juin 2017 à 15:37
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 - 2 juin 2017 à 20:30
Bonjour,


Je cherche à faire afficher les nombres qui ne s'affichent pas ( dans les cellules C1 à C3) dans une cellule C4. En sachant que la plage des nombres vont de 1 à 8.

Exemple :
C1 : " 8;2;3 "
C2 : " 2;5;4 "
C3 : " 2;3 "

En cellule C4 nous auront :

C4 : " 6;7;1 "


4 réponses

ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
2 juin 2017 à 17:05
Bonjour

Une solution avec macro
http://www.cjoint.com/c/GFcpffa6xrH

Cdlmnt
0
Merci pour cette réponse,

J'ai un peu de mal avec les macros il faut que je prenne ça en main ! Je vais essayer de modifier le code !
0
J'ai réussi à modifier le code et lorsque je rentre le chiffre 11 par exemple cela ne m'indique pas que le 1 est absent par exemple..
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
2 juin 2017 à 17:54
Bonjour Arnaud, coucou ccm81 ;-)

Et une solution par formule :
=SI(NB.SI(C3:C5;"*1*")=0;"1;";"")&SI(NB.SI(C3:C5;"*2*")=0;"2;";"")&SI(NB.SI(C3:C5;"*3*")=0;"3;";"")&SI(NB.SI(C3:C5;"*4*")=0;"4;";"")&SI(NB.SI(C3:C5;"*5*")=0;"5;";"")&SI(NB.SI(C3:C5;"*6*")=0;"6;";"")&SI(NB.SI(C3:C5;"*7*")=0;"7;";"")&SI(NB.SI(C3:C5;"*8*")=0;"8;";"")

Cdlmnt
Via
0
Merci pour ta réponse mais lorsqu' je vais jusqu'à 16 nombres avec cette formule
=SI(NB.SI(B7:P7;"*1*")=0;"1;";"")&SI(NB.SI(B7:P7;"*2*")=0;"2;";"")&SI(NB.SI(B7:P7;"*3*")=0;"3;";"")&SI(NB.SI(B7:P7;"*4*")=0;"4;";"")&SI(NB.SI(B7:P7;"*5*")=0;"5;";"")&SI(NB.SI(B7:P7;"*6*")=0;"6;";"")&SI(NB.SI(B7:P7;"*7*")=0;"7;";"")&SI(NB.SI(B7:P7;"*8*")=0;"8;";"")&SI(NB.SI(B7:P7;"*9*")=0;"9;";"")&SI(NB.SI(B7:P7;"*10*")=0;"10;";"")&SI(NB.SI(B7:P7;"*11*")=0;"11;";"")&SI(NB.SI(B7:P7;"*12*")=0;"12;";"")&SI(NB.SI(B7:P7;"*13*")=0;"13;";"")&SI(NB.SI(B7:P7;"*14*")=0;"14;";"")&SI(NB.SI(B7:P7;"*15*")=0;"15;";"")&SI(NB.SI(B7:P7;"*16*")=0;"16;";"")

Il me compte un 4 dans le nombre 14 même si le nombre 4 n'apparait pas seul...
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703 > Arnaud3140
2 juin 2017 à 19:01
Bonsoir

C'est normal puisqu'il trouve un 4 dans 14
Dans ta demande initiale tu parlais de nombre de 1 à 8 donc le problème ne se posait pas
Avec plus de nombres il vaut mieux utiliser la fonction personnalisée clé en main d'eriic( que je salue au passage) apr exemple
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
Modifié le 2 juin 2017 à 18:52
Bonjour à tous,

proposition avec une fonction personnalisée à mettre dans un module standard :
Function manquants(plage As Range, borneMax As Long) As String
    Dim c As Range, i As Long, result() As Long, tmp
    ReDim result(1 To borneMax)
    For Each c In plage
        tmp = Split(c, ";")
        For i = 0 To UBound(tmp)
            result(CLng(tmp(i))) = 1
        Next i
    Next c
    For i = 1 To borneMax
        If result(i) = 0 Then manquants = manquants & ";" & i
    Next i
    manquants = Mid(manquants, 2)
End Function

Syntaxe :
=manquants(plage, borneMax)
borneMax : nombre maxi à considérer comme manquant.
Ex : =manquants(A2:A4;15)
=> 1;6;7;9;10;11;13;14;15
https://www.cjoint.com/c/GFcqZkqs7zi
eric
En essayant continuellement, on finit par réussir. 
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
0
En effet c'est top ! Merci beaucoup ;)
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
2 juin 2017 à 20:30
Une version un peu différente de celle d'eric (salut à toi), qui fonctionne avec une liste de référence "à trous"
https://mon-partage.fr/f/hMikxK1P/

Cdlmnt
0