Casse tête

Bonjour,

Je travail sur un fichier Excel, un listing d'extincteurs (plus de 1000) de mon lieu de travail (je suis dans la sécu incendie).

le listing dispose de plusieurs colonnes dont une pour leur noms ,une pour leur numéros d'inventaire, une pour la localisation etc...

il y a deux feuilles : une pour le listing et une pour l index.

l'index est un peu comme une barre de recherche ou je met le nom de l'extincteur dans une cellule et toutes les informations de l'extincteur choisis du listing sont alors reporter dans un tableau pour accéder au informations facilement . formule =index .... equiv et =recherchv.

Mon soucis est le suivant : je souhaite changer la couleur de la ligne du listing qui correspond à ma recherche sur l index en appuyant sur un bouton ( sois vert extincteurs contrôler sois rouge défectueux). le but étant lors des contrôles de pouvoir être efficace.

Merci d' avance pour les éventuelle motivés;)

PS: si il y a des fautes je suis actuellement en fin de nuit :p

Bonjour

Pourrais tu mettre un fichier exemple,

Bonjour,

à lire ta demande j'ai l'impression qu'un simple filtre auto sur la 1ère feuille est suffisant.

eric

Bonjour,

Sans fichier, ce n'est pas facile mais ça serait éventuellement possible avec une MFC sur une plage nommée !

Attendons le fichier !

Bonjour,

Merci a tous pour vos réponse ! j'ai joint le fichier et supprimé les donnée afin de respecter la confidentialité.

Je précise que je dispose d'un petit scanner portatif relier au pc portable pour scanner le numéro d'inventaire d'un extincteur ( il marque dans la cellule choisi le numéro scanner et donc je voudrai que si l' extincteur controller est clean sur les information donnée par l' index je puisse appuyé sur un bouton pour le coloré dans la liste de façon a dire que il est fait et le mettre en rouge si non conforme ( de façon a faire le listing des extincteur qui doivent être revu par la suite ). actuellement on utilise des feuilles en papiers pour cocher ceux que ont a controller

donc j'ai noté grossièrement quelques extincteur de 1 à 8 pareil pour leurs numéro d'inventaire de 1 a 8 .

Ne vous occuper pas des bouton cliquer je lai est désactivé.

J' espère avoir été clair dans mes explication .

Merci d'avance

PS : je n'ai aucune formation dans excel donc si vous avez réussi j'aimerai avoir des explication afin de pouvoir comprendre les formule ou ligne de code ( j'ai réussi a chopper des bases un peu partout sur le net )

Re PS: Enfaite en quelque sorte je veut une macro qui fasse ctrl + f avec le numéro d' inventaire de la cellue B7 de l index et que il aille dans le listing a la ligne correspondante de ce meme numéro d'inventaire pour le coloré.

RE merci d'avance

...et donc je voudrai que si l' extincteur controller est clean sur les information donnée par l' index je puisse appuyé sur un bouton pour le coloré dans la liste de façon a dire que il est fait et le mettre en rouge si non conforme...

Quel est l'élément qui dit que l'extincteur est "clean" ou non ?

Et bien si les informations du listing coresponde bien a l extincteur sur place c est bon on le met en verr car nous nous déplaçons a chaque extincteur pour le contrôler plusieurs fois par ans .

Enfaite l index permet de retrouver facilement les informations lorsque nous passons contrôler chaque extincteurs.

Et bien si les informations du listing correspondent bien a l'extincteur sur place c'est bon on le met en vert car nous nous déplaçons à chaque extincteur pour le contrôler plusieurs fois par ans.

Donc, j'en conclu que la mise en couleur se fait manuellement, en rouge si non conforme et en vert si conforme au pied de l'extincteur. Voici le code lié à quatre boutons, 2 pour "Conforme" et "Non Conforme" concernant la partie "Extincteur" et deux pour la partie "Inventaire". Enfin, c'est ce que j'ai compris de la demande :

Sub Conformite()

    Dim Plage As Range
    Dim Cel As Range
    Dim Btn As Shape
    Dim Couleur As Integer

    Set Btn = ActiveSheet.Shapes(Application.Caller)

    With Worksheets("32colonnes")

        Select Case Btn.Name

            Case "ExtConforme", "ExtNonConforme"
                Set Plage = .Range(.Cells(9, 12), .Cells(Rows.Count, 12).End(xlUp))
                Set Cel = Plage.Find(Range("B3").Value, , xlValues, xlWhole)

                If Btn.Name = "ExtConforme" Then Couleur = 43 Else Couleur = 3

                If Not Cel Is Nothing Then: .Range(.Cells(Cel.Row, 1), .Cells(Cel.Row, 34)).Interior.ColorIndex = Couleur

            Case "InventConforme", "InventNonConforme"
                Set Plage = .Range(.Cells(9, 10), .Cells(Rows.Count, 10).End(xlUp))
                Set Cel = Plage.Find(Range("B7").Value, , xlValues, xlWhole)

                If Btn.Name = "InventConforme" Then Couleur = 43 Else Couleur = 3

                If Not Cel Is Nothing Then: .Range(.Cells(Cel.Row, 1), .Cells(Cel.Row, 34)).Interior.ColorIndex = Couleur

        End Select

    End With

End Sub

Je te retourne ton fichier pour tests :

70extincteur-v2.xlsm (575.05 Ko)

THEZE un grand merci c'est exactement ce que je voulais !!!

j' ai plus qu' a appliquer sur mon fichier avec toute mes donner ! j'ai la nuit devant moi

merci aussi à ceux qui on répondu a ce post !

Vous êtes au top !!!

Je suis content de t'avoir aidé mais fais attention à la retranscription dans ton fichier, les boutons ont un nom bien particulier comme "ExtConforme" et "ExtNonConforme" pour la partie Extincteur et "InventConforme" et "InventNonConforme" pour la partie Inventaire et comme tu peux le voir dans le code, ils ont leurs importance !

Du coup je me suis servi de ton fichier pour mettre ma liste car j'ai pas réussi a me servir du code . j'ai besoin d'une tite explication car pas moyen de faire marcher la macro . quand tu me parlais du nom des bouton je crois que j'ai pas trop capté

faut il que je crée 4 bouton et affecter la macro a chaque fois ? ou alors je les renomme ? pas moyen de a partir du copie collé du code de faire correspondre mais bouton

Bonjour,

Les 4 boutons appellent la même macro et c'est dans cette dernière qu'est fait la distinction d'où l'importance des nom des boutons.

Tu crées 4 boutons nommés "ExtConforme" et "ExtNonConforme" pour la partie Extincteur et "InventConforme" et "InventNonConforme" pour la partie Inventaire et à chacun de ces bouton tu affectes la même macro, la macro "Conformite()".

Pour nommer les boutons, utilises la zone de nom à gauche de la barre de formule, une fois le nom entré par copier/coller (pour plus de sûreté quant à l'orthographe) tu valides par la touche Entrée.

Merci je vais essayer ! Bonne journée !

Rechercher des sujets similaires à "casse tete"