Sub A_inventaire_9_Base() '(Fonctionne)
'(Obligation de définir tous les chemins en modifiant la macro)
'-compare la cellule "A2" de la colonne "A" feuille "AA" classeur "Classeur1.xls" avec toutes les cellules de la
colonne "B" de la feuille "Toto" du classeur "Classeur2" (les noms peuvent changer)
'Si une valeur identique est trouvée: Remplacer le contenu de la cellule "3" (C) de la feuille AA du
classeur "Classeur1.xls"
'par le contenu de la cellule de la colonne "F" de la feuille "Toto" du classeur "Classeur2.xls" dont la valeur est
la même.
'Sinon reprendre la comparaison a la cellule "A3" et ce jusqu'à la fin de la colonne "A"
'Travail sur 2 feuilles dans 2 classeurs différents)(les noms des feuilles et des classeurs peuvent changer)
'Définition =======================
Dim Cel As Range, Cel_A As Range
Dim F_A As Worksheet, F_B As Worksheet
'Chemins ==============================
Set F_A = Workbooks("Classeur1.xls").Sheets("AA")
Set F_B = Workbooks("Classeur2.xls").Sheets("Toto")
'ou
'Set F_A = Workbooks("Classeur1.xls").Sheets(1)
'Set F_B = Workbooks("Classeur2.xls").Sheets(3)
'Traitement =======================
For Each Cel In F_A.Range(F_A.[A1], F_A.Range("A" & Rows.Count).End(xlUp)) 'Pour chaque cellule de A
'Cel = cellules de références de feuille 3
If Not (IsEmpty(Cel)) Then 'si Cel n'est pas vide
Set Cel_A = F_B.Columns(2).Find(Cel) 'Columns(2)= colonne B
'fixer Cel_a en tant cellule trouvée identique à Cel 'CelA = cellules de références de feuille 4
If Not (Cel_A Is Nothing) Then 'si Cel_A existe
'Copie =======================
'Différentes options à activer ou désactiver selon les besoins (ou à modifier)
'F_A.Range(Cel.Offset(0, 1), Cel.Offset(0, 1)).Copy F_B.Cells(Cel_A.Row, "B")
'Copie les cellules B et C de la feuille 3 en C et D de la feuille 4
'copier B et C de Cel sur C et D de Cel_A
'F_A.Range(Cel.Offset(0, 1), Cel.Offset(0, 2)).Copy F_B.Cells(Cel_A.Row, "B")
'copier B et C de Cel sur C et D de Cel_A
'F_A.Range(Cel.Offset(0, 1), Cel.Offset(0, 1)).Copy F_B.Cells(Cel_A.Row, "c")
'Copie les cellules B de la feuille 3 en D de la feuille 4
'F_B.Range(Cel_A.Offset(0, 1), Cel_A.Offset(0, 1)).Copy F_A.Cells(Cel.Row, "c")
'Copie les cellules B de la feuille 4 en C de la feuille 3
'F_B.Range(Cel_A.Offset(0, 1), Cel_A.Offset(0, 1)).Copy F_A.Cells(Cel.Row, "e")
'Copie les cellules C de la feuille 4 en E de la feuille 3
F_B.Range(Cel_A.Offset(0, 4), Cel_A.Offset(0, 4)).Copy F_A.Cells(Cel.Row, "C")
'Copie les cellules F de la feuille 3 en C de la feuille 1
'(F=4 : Colonne de référence + différence pour colonne à copier)
'F_B.Range(Cel_A.Offset(0, 9), Cel_A.Offset(0, 6)).Copy F_A.Cells(Cel.Row, "C")
'Copie les cellules H, I, J, K de la feuille 4 en C, D, E, F de la feuille 3
End If
End If
Next Cel 'Cel suivante
End Sub