Controle de commun

22test-controle.xlsx (10.13 Ko)

Bonsoir à Tous.

J'aurais besoin de vos lumières. Je voudrais faire un contrôle du nombre de commun à l'intersection des lignes et des colonnes (cellules en jaunes). Je sais faire les contrôles comme vous le constatez dans les cellules jaunes mais je voudrais obtenir le nombre maximum de commun sachant qu'il y a plusieurs possibilités.

exemple cellule bleue : si entre les plages j3:j6 et b9:e9 il y a 4 communs je mets la valeur 4 ;

si entre les plages j3:j6 et b9:d9 il y a 3 communs je mets la valeur 3 ;

si entre les plages j3:j6 et b9:c9 il y a 2 communs je mets la valeur 2 ;

sinon je ne mets rien.

Cette procédure a pour but de n'avoir qu'un plage de contrôle sinon je n'aurai pas assez de colonnes.

Je vous remercie par avance de vos réponses.

Cordialement

Bonjour,

Je note que ton fichier a déjà été pas mal téléchargé, mais les réponses ne semblent pas affluer !

Il m'a moi-même occupé une bonne partie de la soirée avancée d'hier, où cela me semblait être un dérivatif adapté à mon état... disons peu empreint de vivacité...!

Le "commun" m'intriguait. J'ai tout de même décodé pas trop lentement qu'il s'agissait d'évaluer le nombre de valeurs d'une suite présentes dans une autre.

Par contre il m'a fallu un temps infiniment plus étendu pour voir que les valeurs bizarres (et impossibles dans certains cas) que j'obtenais étaient dues au fait que ton classeur était en mode calcul manuel !

Il m'a semblé que l'objectif était de traiter la suite 1 par portions successives de 2 à 4 nombres et de s'arrêter à la portion dont tous les nombres étaient présents dans la suite 2. Mais je n'en suis pas tout à fait sûr.

Si toutefois c'était bien le but recherché, je n'ai pas trouvé une manipulation des matrices permettant d'aboutir au résultat souhaité (quoique avec les épisodes "calcul manuel" je ne puisse rien affirmer avec certitude sur une bonne partie de mes essais). Mais en examinant le mode de calcul d'Excel avec diverses fonctions et combinaisons de fonctions, je n'ai pas vu de moyen d'aboutir à une matrice, dont chaque élément serait le résultat d'une comparaison spécifique de matrices, et de laquelle on pourrait extraire la valeur cherchée.

En tout état de cause, ce qui me semble permettre de parvenir au résultat (si c'est bien celui cherché), c'est la formule toute bête :

=SI(SOMME(1*(($B9:$E9-J$3:J$6)=0))=4;4;SI(SOMME(1*(($B9:$D9-J$3:J$6)=0))=3;3;SI(SOMME(1*(($B9:$C9-J$3:J$6)=0))=2;2;"")))

à valider matriciellement.

Si le nombre de valeurs n'est que de 2 à 4, on peut fort bien s'en contenter. S'il doit être plus élevé, pour ma part je m'orienterai vers la construction d'une fonction personnalisée...

Cordialement

Ferrand

bonjour,

une solution avec une macro

Sub test()
    For j = 10 To 14 Step 2    ' colonnes j à n
        For i = 9 To 12        ' lignes 9 à 12
            c = 0              ' compteur d'occurrences
            For k = 3 To 7     ' lignes 3 à 7
                For l = 2 To 1 + Cells(1, j) ' colonnes B à nombre indiquée pour la colonne en cours
                    If Cells(i, l) = Cells(k, j) Then c = c + 1 ' incrémente compteur si trouvé
                Next l
            Next k
            Cells(i, j) = c
        Next i
    Next j
End Sub

Bonsoir a tous.

Je vous remercie pour vos réponses. Je les testerai des demain, du moins pour la 1ere solution car celle en VBA, si c'est du VBA, je ne connais et ne maitrise pas du tout.

Je vous remercie encore de vos réponses et mettrai le sujet comme résolu après l'avoir testé.

Bonne soirée à tous.

Cordialement

Bonjour a tous.

Je viens de vérifier la 1ère solution. Cela fonctionne à merveille.

Encore un grand merci à tous J'espère qu'un jour mes modestes connaissances me permettrons de renvoyer l'ascenseur comme l'on dit.

Cordialement

Rechercher des sujets similaires à "controle commun"