On considère donc ceci :
1. Le fichier 1 est le fichier "2 ok SUIVI PLOTS.XLSM" et contient
- Le code VBA
- la feuille GESTION PARC OUTILS KIWA 1
- Les colonnes M à Q à compléter
2. Le fichier 2 le fichier "1 ok cas emplois outils paletises.xlsm" et contient
- Le tableau structuré nommé Tableau1
- la feuille BASE GLOBAL
NB : ce fichier peut ne pas être ouvert
3. Les fichiers 1 et 2 sont dans le même répertoire.
Voici le code
Option Explicit
Sub test()
Dim i As Byte, col As Byte
Dim cel As Range
Dim derlig As Integer, nblig As Integer
Dim chemin As String, fichier As String
chemin = "I:\USERS\Magasin d'outillage MO2\M-FRAISAGE-DEMO\"
fichier = "1 ok cas emplois outils paletises.xlsm"
Workbooks.Open chemin & fichier
With Workbooks(fichier).Sheets("BASE GOLBAL")
For Each cel In .ListObjects("Tableau1").ListColumns(1).DataBodyRange
On Error Resume Next
With ThisWorkbook.Sheets("GESTION PARC OUTILS KIWA 1")
col = .Range("M5:Q5").Find(cel.Value, LookIn:=xlValues, lookat:=xlWhole).Column
If col > 0 Then
derlig = .Cells(Rows.Count, col).End(xlUp).Row + 1
.Cells(derlig, col) = cel.Offset(0, 7).Value
End If
col = 0
End With
Next cel
End With
End Sub
Le code ouvrira le fichier s'il n'est pas ouvert
REM : avec les codes VBA il est préférable de ne jamais avoir des espaces dans le nom des fichiers et des feuilles. C'est toujours une source d'erreur.
Cordialement