Table de conversion macro

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 !

Soleil11

XLDnaute Occasionnel
Bonjour le forum,

Pourrais-je vous demander votre aide pour un petit code vba.

J'ai classeur excell avec deux feuilles :

Feuille 1 = "CR table" (table de conversion)
Feuille 2 = "résultat"

J'aimerais comparer la colomne A de la feuille 1 et la colomne A de la feuille 2 et si il trouve les mêmes valeurs il faudrait retourner/remplacer le résultat en colomne A en feuille 2 par les titres qui se trouve en feuille 1 colomne B. La feuille 1 CR table serait la table de conversion.

J'ai attaché le fichier peut-être que ce sera plus claire, le résultat voulu est en rouge.

Merci d'avance.

Soleil 11😱
 

Pièces jointes

Re : Table de conversion macro

Bonsoir,
Code:
Sub Vlookup()
Dim r1 As Range, r2 As Range, c As Range, v As Range
With Sheets("Source")
Set r1 = .Range("A2:A" & .Range("A65000").End(xlUp).Row)
End With
With Sheets("CR table")
Set r2 = .Range("A2:A" & .Range("A65000").End(xlUp).Row)
End With
For Each c In r1
    Set v = r2.Find(c.Value)
    If Not v Is Nothing Then c.Value = v.Offset(0, 1).Value
Next
End Sub
A+
kjin
 
Re : Table de conversion macro

Bonjour le forum,

Cela marche parfaitement,

Tous remerciements pour votre aide.

Soleil11

Rebonjour le forum,

J'ai encore une petite faveur à vous demander; lorsqu'il ne trouve pas la valeur est-il possible qu'il colorie la celulle en rouge, car j'ai énormément de chiffres sur la feuille source.

Merci encore pour votre aide à nouveau.

Soleil11😛
 
Re : Table de conversion macro

Bonjour Soleil, kjin

modifie peut être ainsi :
Code:
Sub Vlookup()
Dim r1 As Range, r2 As Range, c As Range, v As Range
With Sheets("Source")
Set r1 = .Range("A2:A" & .Range("A65000").End(xlUp).Row)
End With
With Sheets("CR table")
Set r2 = .Range("A2:A" & .Range("A65000").End(xlUp).Row)
End With
For Each c In r1
    Set v = r2.Find(c.Value)
    If Not v Is Nothing Then
        c.Value = v.Offset(0, 1).Value
    Else
        c.Interior.ColorIndex = 3
    End If
Next
End Sub

bon après midi
@+
 
- 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

Réponses
2
Affichages
240
Réponses
0
Affichages
429
Retour