Macro - Comparaison

Bonjour à tous,

Avant tout, merci pour la mine d'information que représente ce site. Débutant en VB, cela m'a déjà bien rendu service

Par contre je sollicite votre aide car là je bloque complet.

> J'ai un classeur excel avec une feuille "AccèsP" qui est au final un tableau que j'imprime au quotidien, et qui est mis à jour avec des macro.

> Les colonnes E et F, me renseignent sur la localisation des opérations.

> Seulement, il se peut que sur deux lignes différentes et même si les noms ne sont pas identiques, deux localisations soient liées.

> Pour le savoir il existe une feuille "Base Données" qui en fait le bilan.

> Je souhaiterais créer un bouton "Interractions Chantier" qui ouvrirait un USF et qui me mettrais de suite les chantiers liés entres eux suivant :

- Les données des colonnes E et F de la Feuille AccèsP par rapport à la base de donnée

- Les données des colonnes E et F de Feuille AccèsP si même nom dans colonne E et/ou dans E et F

Voilà, je ne sais pas si je suis très clair mais PLEASE HELP lol....c'est en train de me rendre dingue

Je joint un fichier.

Merci d'avance pour votre aide.

19classeur3.zip (18.11 Ko)

Bonjour,

J'ai beau me creuser mais je ne comprends pas du tout ce que vous voulez faire. Désolé.

Lol, suis mauvais.

J'essais autrement :

Feuille "AccèsP":

Colonne "E" Colonne"F"

Index Smiley

Post-it Ecran

Crayon Gomme

Les colonnes E et F forment un "couple" permettant une localisation des travaux.

Seulement, il se peut que deux couples soient liés par une liaison électrique non visible dans ce tableau.

Cela peut du coup rendre des travaux sur deux couples "E"/"F" incompatibles

Je voulais donc créer une feuille Base de Donnée afin d'apprendre à la macro ou comparer et chercher les informations et ensuite que cela apparaissent dans un USF sous forme d'alerte pour l'utilisateur avec les données présente dans la base de donnée.

Cette dernière se présente comme suit :

Colonne "A" Colonne "B" Colonne "C" Colonne "D" Colonne "E"

Index Smiley Liaison Gomme Crayon

Le résultat attendu dans un USF est donc d'afficher la ligne du tableau de la feuille base de donnée et de mettre en surbriallance les couples dans la feuille "AccèsP" car dans l'exemple ci-dessus il se peut que les travaux prévus sur chacun des couples soient incompatibles le jour J

En espérant avoir été plus clair lol.

MERCI D'AVANCE car je suis toujours au point mort

Bonjour,

Hé bien je dois avouer que non ce n'est guère plus claire.

Vous savez ce vous voulez vous (du moins je le suppose) mais vous ne savez pas nous montrer ni nous expliquer ce qui est dans votre tête. Et moi je n'arrive pas à partir des renseignements fournis à comprendre ce qu'il faut faire faire à la machine.

Je vois que le fichier à été télécharger 10 fois et cela n'amène pas encore de réponse mais eulement des questions.

Arf...snif...

Effectivement j'ai mon idée..pas facile tout le temps d'essayer de faire comprendre un truc par écrit.

Bref, peut être avec le fichier légèrement modifié.

Il faut juste comprendre que la feuille AccèsP est créée une fois par jour et liste les opération travaux du lendemain.

11classeur3-2.xlsx (22.27 Ko)

Bonjour à tout le forum,

Finalement en cherchant et en adaptant macro et opérateurs, j'ai un bon début de solution.

Peut-être que cela aidera quelqu'un qui recherche quelque chose de tordu dans le même genre lol

Bref suis content et laisse le fichier joint où pour lancer la macro il faut aller dans l'éditeur.

Voici le code sinon :

Sub Find_Matches()

    Dim CompareRange As Variant, x As Variant, y As Variant, z As Variant

    ' Set CompareRange equal to the range to which you will compare the selection.

    Set CompareRange = Worksheets("BdD").Range("D2:D15")
    Set Plage = Range("F13:F27")
    Set CompareRange2 = Worksheets("BdD").Range("B2:B15")

    ' NOTE: If the compare range is located on another workbook
    ' or worksheet, use the following syntax.
    ' Set CompareRange = Workbooks("Book2"). _
    '   Worksheets("Sheet2").Range("C1:C5")
    '
    ' Loop through each cell in the selection and compare it to
    ' each cell in CompareRange.

    For Each x In Plage
    x.Select
        For Each y In CompareRange
            For Each z In CompareRange2

                If x = y And x = z Then Selection.Font.ColorIndex = 18
        Next z
    Next y
    Next x    

    MsgBox ("Test")

End Sub

Merci en tout cas à ceux qui se sont arrété sur ce post

Tal

21classeur3.zip (20.13 Ko)

LOL.....

Mon post ici n'intéresse personne mdr....

Bonne soirée à tous....

Tal

Rechercher des sujets similaires à "macro comparaison"