Bonjour Corsican, bonjour le forum,
Pourquoi un fichier bloqué si tu as besoin d'aide ?!... N'importe quoi....
Sub Macro1()
Dim CS As Workbook 'déclare la variable CS (Classeur Source)
Dim OS As Worksheet 'déclare la variable OS (Onglet Source)
Dim CD As Workbook 'déclare la variable CD (Classeur Destination)
Dim OS As Worksheet 'déclare la variable OD (Onglet Destination)
Dim TD As ListObject 'déclare la variable TD (Tableau Destination)
Dim R As Range 'déclare la variable R (Recherche)
Dim LI As Integer 'déclare la variable LI (LIgne)
Set CS = Workbooks("t-import.xlsx") 'définit le classeur source CS
0 Set OS = CS.Worksheets("FICHE_TRANSMISSION") 'définit l'onglet source OS
Set CD = Workbook("template-suivi-des-marches-2022-v2-1.xlsm") 'définit le classeur destination CD
Set OD = CD.Worksheets("Ben_tiens_va_savoir_avec_un_code_bloqué") 'définit l'onglet destination OD
Set TD = OD.ListObjects("TABLEAU_AFFAIRE") 'définit la tableau destination TD
R = TD.ListColumns(1).Range.Find("") 'définit la recherche R (recherche du vide dans la colonne 1 de TD)
If R Is Nothing Or TD.ListRows = Nothing Then 'condition : si aucune occurrence trouvée ou si TD n'a pas de ligne
TD.ListRows.Add 'ajoute une ligne à TD
LI = TD.ListRows.Count 'définit la ligne LI
Else 'sinon (au moins une occurrence trouvée)
LI = R.Row - TD.HeaderRowRange.Row 'définit la ligne LI (ligne de la première occurrence trouvé - la ligne des en-têtes de TD)
End If 'fin de la condition
OS.Range("Ta_Cellule").Copy TD.DataBodyRange(LI, 1) 'option 1 : copie / colle
TD.DataBodyRange(LI, 1) = OS.Range("Ta_Cellule").Value 'option 2 : récupère la valeur
'idem pour la suite en modifiant l'adresse de la cellule et en adaptant la colonne de TD...
End Sub
[Édition]
Bonjour Arthur, nos posts se sont croisés...