Trouver une cellule sur une autre feuille

Bonjour a tous, j'aimerais rechercher le contenu d'une cellule sur une autre feuille et la mettre en evidence. Je vous fourni le fichier et mon objectif.

Bonjour,

Ce n'est pas un souci de te faire un code mais quid de la ligne mise en couleur lorsque la cellule DS2 va changer de valeur. Là à ce moment une ligne sera coloriée sur base de la valeur précédente en DS2.

Donc ma question, la couleur doit rester ou changer ?

Autre petite remarque, évite de mettre un fond blanc lorsque tu n'utilises pas les cellules vides. Les couleurs alourdissent toujours les fichiers inutilement

A te relire

Merci de te pencher sur ma demande, Dan!

Si j'ai bien compris ta question, l'ancienne ligne mis en couleur dois disparaitre lorsqu'on mettra une nouvelle valeur dans DS2. Son contenu vient d'un fichier texte dont le contenu vient du port serie. Pour le moment il aura toujours la meme valeur car je n'ai pas fini de developper mon application. J'ai oublie de te fournir ce fichier. C'est peut etre pour ca que je n'avais pas de reponses

Pour tester une autre valeur de DS2, tu peux aller mettre une autre valeur dans le fichier, change simplement la valeur des 2 premiers octets. Par exemple remplace 0041 par 0044. Ce fichier doit etre dans le meme repertoire que le fichier excel.

52vers-excel.txt (108.00 Octets)

Re,

Plutôt que d'utiliser la cellule DS2, peut-on utiliser les cellules DV et DW que si je ne me trompe tu complètes manuellement

De plus je suppose que la mise en couleur se fera sur base du changement apporté et non sous l'action d'un bouton ?

A te relire

DS2 est concatener a partir de DV et DW, alors tu peux utliser DV et DW pour la recherche sur la feuille ASS compile mais tu devra je pense les regrouper alors que DS2 est deja pret grace a la formule dans la cellule.

Le bouton <STEP> du UserForm COMMANDES declenchera amenera automatiquement une nouvelle valeur dans DV et DW, et donc DS2 egalement. Mais on doit changer le contenu des 2 premiers octets du fichier "vers excel" pour ca.

Tu peux m'ecrire le code et je le placerai au bonne endroit et je ferai le test.

J'espere que mes explications sont suffisante.

Re

DS2 est concatener a partir de DV et DW, alors tu peux utliser DV et DW pour la recherche sur la feuille ASS compile mais tu devra je pense les regrouper alors que DS2 est deja pret grace a la formule dans la cellule.

Le bouton <STEP> du UserForm COMMANDES declenchera amenera automatiquement une nouvelle valeur dans DV et DW, et donc DS2 egalement. Mais on doit changer le contenu des 2 premiers octets du fichier "vers excel" pour ca. .

Le choix de DS ou DV et DW dépend de ce que tu fais. Si tu veux que la colorisation se fasse automatiquement dès que tu changes une valeur en DV et DW, c'est mieux d'utiliser DV et DW. Si tu utilises un bouton comme je pense le comprendre ici, alors on peut simplement utiliser DS2.

Par contre il faudra deux codes, un pour enlever la couleur avant que les valeurs en DS2 ou DV et DW ne change et un code pour changer sur base de la nouvelle valeur.

In fine, il est plus simple d'utiliser le bouton

A te relire

Dan, c'est tout a fait ce qu'il faut: lorsque je clic <STEP>, on commence par effacer la ligne en couleur puis on effectue la recherche selon DS2 et on colorie la nouvelle ligne!

Re,

Voici deux codes à placer dans ton fichier et qui devraient faire ce que tu demandes.

Le premier code supprime la couleur, le deuxième la remet en fonction de la modification des cellules DV et DW.

Code 1 :

Sub supprimecouleur()
'Macro Dan pour Capucin
Dim ref As String
Dim lg As Integer
ref = Sheets("EPE").Range("DV2") & Sheets("EPE").Range("DW2")
With Sheets("ASS compile")
    On Error Resume Next
    lg = WorksheetFunction.Match(ref, .Range("B3:B" & .Range("B" & Rows.Count).End(xlUp).Row), 0) + 2
    If Err = 0 Then .Range("A" & lg & ":AA" & lg).Interior.ColorIndex = -4142
End With
End Sub

code 2 :

Sub mettrecouleur()
'Macro Dan pour Capucin
Dim ref As String
Dim lg As Integer
ref = Sheets("EPE").Range("DV2") & Sheets("EPE").Range("DW2")
With Sheets("ASS compile")
    On Error Resume Next
    lg = WorksheetFunction.Match(ref, .Range("B3:B" & .Range("B" & Rows.Count).End(xlUp).Row), 0) + 2
    If Err = 0 Then .Range("A" & lg & ":AA" & lg).Interior.ColorIndex = 6
End With
End Sub

Les deux codes doivent être placés dans un module.

Si j'ai bien compris ton bouton STEP se trouve dans une USF. Pour exécuter ces deux codes, il faut appeler les deux codes depuis l'action de ton bouton .

A cette fin, dans ton code USF lié au bouton STEP mets l'instruction CALL comme ceci :

CALL supprimecouleur
CALL mettrecouleur

La suppression de la couleur doit se faire avant tout changement d'une des deux cellules DV et DW. Il te faut donc placer ce CALL en début de code lié au bouton STEP.

Une fois les instructions finies pour le changement de DV et DW, tu places le CALL mettrecouleur qui mettra la couleur sur la bonne ligne.

Si ok, merci de ne pas omettre de cloturer le fil

Amicalement

ca fonctionne tres bien! merci egalement pour toute les precisions, ca ne peut pas etre plus complet.

Avant de fermer, aurais-tu une methode pour voir a l'ecran la ligne mis en couleur, si je vais sur cette feuille (ASS compile)? Il faudrais un genre de recherche qui trouverais la ligne dans lequel j'ai du jaune. Je pourrais commander ca par un bouton.

Rechercher des sujets similaires à "trouver feuille"