D'une manière générale il serait plus logique d'écrire :
Sub TransferVersBDDClient()
Dim TData As ListObject, LR, Arr
Set TData = [TStock2022].ListObject 'on le met ici car c'est une déclaration préliminaire ensuite...
Feuil1.Range("A1").End(xlDown).Select
Arr = Feuil1.Range(Selection, Selection.End(xlToRight)).Value
Set LR = TData.ListRows.Add
LR.Range.Value = Arr
End Sub
Toujours d'une manière générale :
Arr = Feuil1.Range(Selection, Selection.End(xlToRight)).Value
C'est la ligne qui sera transférée
Normalement on ne sélectionne jamais, mébon... Comme tu sélectionnes, il n'est pas compliqué de faire autant de sélections que de transferts
Arr = Feuil1.Range(Selection, Selection.End(xlToRight)).Value
Set LR = TData.ListRows.Add
LR.Range.Value = Arr
Arr = Feuil1.Range(Selection, Selection.End(xlToRight)).Value
Set LR = TData.ListRows.Add
LR.Range.Value = Arr
Arr = Feuil1.Range(Selection, Selection.End(xlToRight)).Value
Set LR = TData.ListRows.Add
LR.Range.Value = Arr
Comment tu passes d'une sélection à l'autre ?
Ça je ne peux pas te dire puisque ta question est très vague... Comment je devine ou commence ta sélection ??
Mais sur le principe je ne procèderait pas différemment, sauf que au lieu de sélectionner je dirais :
Arr = Feuil1.Range(blabla).Value
Set LR = TData.ListRows.Add
LR.Range.Value = Arr
'... et ainsi de suite
Le seul mal que tu as à te donner c'est pour identifier la ligne à transférer : Pour la cible ce sera toujours la même instruction :
Set LR = TData.ListRows.Add
LR.Range.Value = Arr
C'est tout l'avantage des tableaux structurés :TAPA à te casser la tête...
A+