Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Compatible ou pas ?

  • Initiateur de la discussion Initiateur de la discussion WDAndCo
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

WDAndCo

XLDnaute Impliqué
Bonsoir le Forum

Comment savoir si une clé est compatible ou pas avec une serrure a l'aide de 3 tables ?

Exemple : Soit une clé 4C4 est compatible avec des serrures 4C3, 4C4, 4E3, 4E4, 4G3, 4G4, 4H3, 4H4, 4K3, 4K4, 4L3 et 4L4 (Voir les tables du haut dans le fichier)
ou
Exemple : Soit une Serrure 4C4 est compatible avec des clés 4A4, 4C4, 5A4 et 5C4 (Voir les tables du bas dans le fichier)

Comment rendre cela automatique ?
Le fait de taper 3G7 cela me donne :
Cette clé 3G7 est compatible avec les serrures ...........
Cette Serrure 3G7 est compatible avec les clés ...........
Et le fait de donner 2 Réf
Par Exemple : 1A3 et 3G6
La clé 1A3 est (ou n'est pas) compatible avec la serrure 3G6
La serrure 1A3 est (ou n'est pas) compatible avec la clé 3G6

D'avance merci, et je me tiens a votre disposition pour toutes information complémentaire !

Dominique
 

Pièces jointes

Re : Compatible ou pas ?

Bonjour

J'ai ajouté un petit module de test pour avoir ton avis avant de poursuivre.

En appuyant sur le bouton "Tests" les serrures risquant d'être en doublon avec les clefs précédentes sont listées en colonne 5 dans la ligne de la clef concernée.

Est-ce ce type d'info que tu souhaites ?
à plus
 

Pièces jointes

Re : Compatible ou pas ?

Bonsoir le Forum et Le Pierre

Pour être compatible il faut que les deux termes à vérifier soit dans la liste comme dans les exemples joints.

La liste est généré grave à la Fonction de Roger2327.

Voila, je me tiens a votre disposition pour tous compléments d'information.

Amicalement
Dominique
 

Pièces jointes

Dernière édition:
Re : Compatible ou pas ?

Bonjour

Sauf erreur de ma part, le but de cette application est bien de contrôler pour un même lieu qu'il n'y ait pas de clefs qui ouvrent plusieurs serrures ?

Si oui, il faut donc ajouter dans ton tableau le type de serrure installé pour chaque installation de sécurité. Ainsi il sera aisé de vérifier si c'est OK voire de proposer une nouvelle serrure.

à plus
 
Re : Compatible ou pas ?


Bonsoir le Forum et Le Pierre

1) - La vérification ce limite aux lieux d'utilisation et aux lieux de remisage des clefs de secours.

2) - Il faut partir du principe : Si il y a une clef XXX il y a une forcément serrure XXX donc la dénomination XXX est valable pour une clef et/ou une serrure (Sauf cas particuliers qui sont alors facilement repérables).

Donc si on a 5 clefs utiliser dans un même lieu les vérifications a effectuer seront :
1 avec 2
1 avec 3
1 avec 4
1 avec 5
2 avec 3
2 avec 4
2 avec 5
3 avec 4
3 avec 5
et 4 avec 5

Amicalement
Dominique
 
Re : Compatible ou pas ?

Bonjour et merci de vous intéresser à ce sujet

Plusieurs petite chose

1) lancement de la macro il faudrait vider la colonne E ou 5 car si il y a un autre lancement les valeurs s'ajoutent

2) les réciproques ne sont pas misent par Exp 1F3 1A4 etc.
Car en pratique si j'ai 3 incompatibilités j'ai 3 réciproques (voir la PJ)

3) je pense que pour rendre le classeur plus pratique il faudrait que les tests devront se faire sur une autre page. Comment récupérer les données pour effectuer ses tests (Type, Marque, incompatibilités clef et incompatibilités serrures) et cela a la suite d'un filtre sur le lieux et ou secours.

(Au fait la colonne HT est un test qui m'indique si la clef ou serrure est ou doit être utiliser pour la HT)

Amicalement
Dominique
 

Pièces jointes

Re : Compatible ou pas ?

Bonjour

Voici la nouvelle version rectifiée qui devrait produire le résultat attendu pour ce qui concerne les compatibilités entre clefs et serrures. Fais des tests et dis moi.

Il reste à traiter le point 3 ainsi que la gestion des lieux.

Qu'est que la "HT" ? (haute tension ?)

à plus.
 

Pièces jointes

Re : Compatible ou pas ?

Bonjour le Forum et Le Pierre

J'ai essayer d'adapter la Macro Tests dans le fichier d'origine, mais bien sur elle ne fonctionne plus aussi j'ai remis le fichier, avec ce que j'aimerais avoir sur la page Tests

Le Fichier

Cela fait il ne resteras que la copie de certaines infos d'une page a l'autre

Voila ce tout pour aujourd'hui
Bon dimanche
Amicalement
Dominique

Édit : Pourquoi ne pas mettre la Macro Test sur la page principale ?
1) Lancement de la Macro
2) Vérification que la recherche ce fait pour un même Lieu ou un même Secours
3) Si Oui Vérification , si Non on passe a la suivante
4) Si Compatibilité : Affichage
5) On passe a la suivante

Votre avis ?

Dominique
 
Dernière édition:
Re : Compatible ou pas ?

Bonjour

Ci joint ton fichier avec les macros actualisées : http://cjoint.com/?lqnt07un4v
sur ce lien car le fichier est trop gros pour passer sur le forum.

Ca ne fonctionnait pas sur ton fichier d'origine car j'avais modifié les fonctions RechercheCS(..) et RechercheSC(..) en enlevant le texte "Une clef " & CLEF & " est compatible avec la serrure ..."

Il y a maintenant une analyse des clefs pour chaque lieu mais toujours sur la même feuille (clique sur le bouton "Tests").

Tu ne m'as toujours pas dit ce qu'est la "HT" ? (haute tension ?)

à plus
 
Re : Compatible ou pas ?

Bonjour,

Je Test je vais essayer de reprendre la même présentation de la page Tests pour la mettre sur la page principale

HT = Haute Tension bien sur !

Encore merci de votre aide

Amicalemnt
Dominique
 
Re : Compatible ou pas ?

Bonjour le Forum et Le Pierre

La Macro a l'air de fonctionner.

Pourquoi en ligne 366 il y a 2J1 pour la vérification de la 2J1

Pour la parfaire il faudrait que l'incompatibilité soit signifier que si les Lieux et ou les Secours sont communs car le Lieux est le lieux d'utilisation (Il ne doit pas avoir de compatibilités)
Le Secours (Stockages de clefs de secours de plusieurs lieux la aussi il ne doit pas avoir de compatibilités (Une clef compatible d'un lieu pourrait aller dans un autre))
De plus les clefs d'un Lieu peuvent être misent dans des Secours différents, et un Secours peut avoir des Clefs de différents Lieux.

Clefs_S_V4.xls

Amicalemnt
Dominique
 
Dernière édition:
Re : Compatible ou pas ?

Bonjour

A la ligne 366 il y a 2J1 en incompatibilité car à la ligne 352 il y a également une 2J1 pour le même site de Dourges.
Pour le vérifier, réalise un filtre en colonne A en recherchant 2J1.

Dans l'état actuel de la macro seuls les lieux sont analysés (pas les secours).

à plus
 
Re : Compatible ou pas ?

Bonsoir le Forum et Le Pierre

Voici les dernières modifs le vert marche le rouge non !

Code:
Sub RechercheCompatibilité()
    '---> on suppose que les données sont déjà triées par "Lieux"
    
    'Effacement anciennes données
    LigFin = Range("A65536").End(xlUp).Row
    Range(Cells(2, 5), Cells(LigFin, 6)).ClearContents
    
    'Vérification des compatibilités
    ErrTst = 0
    For Lig = 2 To LigFin
        Serrure = Cells(Lig, 1).Value
        Lieu = Cells(Lig, 3).Value
        [COLOR="Red"]'Secours = Cells(Lig, 4).Value[/COLOR]
        
        'Vérification des clefs compatibles
        For LigB = 2 To LigFin
            If Lieu = Cells(LigB, 3).Value Then
            [COLOR="Red"]'If Secours = Cells(LigB, 4).Value Then[/COLOR]
                If LigB <> Lig Then
                    SerrureB = Cells(LigB, 13).Value
                    y = 1
                    Do
                        x = InStr(y, SerrureB, ",")
                        If x = 0 Then
                            SerrureBis = Right(SerrureB, 3)
                        Else
                            SerrureBis = Mid(SerrureB, y, x - y)
                        End If
                        If Serrure = SerrureBis Then
                            Cells(LigB, 5).Value = "'" & Cells(LigB, 5).Value & " " & SerrureBis [COLOR="Green"]& " (" & Cells(Lig, 2) & ")"[/COLOR]
                            ErrTst = 1
                        End If
                        y = x + 2
                    Loop Until x = 0
                End If
            End If
        Next LigB
        
        'Vérification des serrures compatibles
        For LigB = 2 To LigFin
            If Lieu = Cells(LigB, 3).Value Then
            [COLOR="Red"]'If Secours = Cells(LigB, 4).Value Then[/COLOR]
                If LigB <> Lig Then
                    SerrureB = Cells(LigB, 14).Value
                    y = 1
                    Do
                        x = InStr(y, SerrureB, ",")
                        If x = 0 Then
                            SerrureBis = Right(SerrureB, 3)
                        Else
                            SerrureBis = Mid(SerrureB, y, x - y)
                        End If
                        If Serrure = SerrureBis Then
                            Cells(LigB, [COLOR="Green"]6[/COLOR]).Value = "'" & Cells(LigB, [COLOR="Green"]6[/COLOR]).Value & " " & SerrureBis [COLOR="Green"]& " (" & Cells(Lig, 2) & ")"[/COLOR]
                            ErrTst = 1
                        End If
                        y = x + 2
                    Loop Until x = 0
                End If
            End If
        Next LigB
    Next Lig
    
    If ErrTst = 0 Then MsgBox ("OK pour comparaison avec les clefs et serrures compatibles")
    
End Sub

Une bonne soirée !

Dominique
 
Re : Compatible ou pas ?

Bonjour

essaie ceci :
Code:
Sub RechercheCompatibilité()
    '---> on suppose que les données sont déjà triées par "Lieux"
    
    'Effacement anciennes données
    LigFin = Range("A65536").End(xlUp).Row
    Range(Cells(2, 5), Cells(LigFin, 6)).ClearContents
    
    'Vérification des compatibilités
    ErrTst = 0
    For Lig = 2 To LigFin
        Serrure = Cells(Lig, 1).Value
        Lieu = Cells(Lig, 3).Value
        LieuSecours = Cells(Lig, 4).Value
        
        '--------- Vérification pour les Lieux --------------
        'Vérification des clefs compatibles
        For LigB = 2 To LigFin
            If Lieu = Cells(LigB, 3).Value Then
            'If LieuSecours = Cells(LigB, 4).Value Then
                If LigB <> Lig Then
                    SerrureB = Cells(LigB, 13).Value
                    y = 1
                    Do
                        x = InStr(y, SerrureB, ",")
                        If x = 0 Then
                            SerrureBis = Right(SerrureB, 3)
                        Else
                            SerrureBis = Mid(SerrureB, y, x - y)
                        End If
                        If Serrure = SerrureBis Then
                            Cells(LigB, 5).Value = "'" & Cells(LigB, 5).Value & " " & SerrureBis & " (" & Cells(Lig, 2) & ")"
                            ErrTst = 1
                        End If
                        y = x + 2
                    Loop Until x = 0
                End If
            End If
        Next LigB
        
        'Vérification des serrures compatibles
        For LigB = 2 To LigFin
            If Lieu = Cells(LigB, 3).Value Then
            'If LieuSecours = Cells(LigB, 4).Value Then
                If LigB <> Lig Then
                    SerrureB = Cells(LigB, 14).Value
                    y = 1
                    Do
                        x = InStr(y, SerrureB, ",")
                        If x = 0 Then
                            SerrureBis = Right(SerrureB, 3)
                        Else
                            SerrureBis = Mid(SerrureB, y, x - y)
                        End If
                        If Serrure = SerrureBis Then
                            Cells(LigB, 6).Value = "'" & Cells(LigB, 6).Value & " " & SerrureBis & " (" & Cells(Lig, 2) & ")"
                            ErrTst = 1
                        End If
                        y = x + 2
                    Loop Until x = 0
                End If
            End If
        Next LigB
        
        '--------- Vérification pour les Lieux de Secours --------------
        'Vérification des clefs compatibles
        For LigB = 2 To LigFin
            If LieuSecours = Cells(LigB, 4).Value Then
                If LigB <> Lig Then
                    SerrureB = Cells(LigB, 13).Value
                    y = 1
                    Do
                        x = InStr(y, SerrureB, ",")
                        If x = 0 Then
                            SerrureBis = Right(SerrureB, 3)
                        Else
                            SerrureBis = Mid(SerrureB, y, x - y)
                        End If
                        If Serrure = SerrureBis Then
                            Cells(LigB, 5).Value = "'" & Cells(LigB, 5).Value & " " & SerrureBis & " (" & Cells(Lig, 2) & ")"
                            ErrTst = 1
                        End If
                        y = x + 2
                    Loop Until x = 0
                End If
            End If
        Next LigB
        
        'Vérification des serrures compatibles
        For LigB = 2 To LigFin
            If LieuSecours = Cells(LigB, 4).Value Then
                If LigB <> Lig Then
                    SerrureB = Cells(LigB, 14).Value
                    y = 1
                    Do
                        x = InStr(y, SerrureB, ",")
                        If x = 0 Then
                            SerrureBis = Right(SerrureB, 3)
                        Else
                            SerrureBis = Mid(SerrureB, y, x - y)
                        End If
                        If Serrure = SerrureBis Then
                            Cells(LigB, 6).Value = "'" & Cells(LigB, 6).Value & " " & SerrureBis & " (" & Cells(Lig, 2) & ")"
                            ErrTst = 1
                        End If
                        y = x + 2
                    Loop Until x = 0
                End If
            End If
        Next LigB
         
    Next Lig
    
    If ErrTst = 0 Then MsgBox ("OK pour comparaison avec les clefs et serrures compatibles")
    
End Sub
Ca fonctionne mais les infos se trouvent doublées dans certains cas.
(exemple pour "Calonne - Ricouart" où l'on obtient "2F5 (MFP1) 2F5 (MFP1)" au test C/S : une fois pour le Lieux et une autre fois pour le Secours)

à plus
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Réponses
11
Affichages
438
Réponses
6
Affichages
340
  • Question Question
Microsoft 365 agrandir la liste
Réponses
21
Affichages
682
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…