Private Sub C_Test_Click()
'les cellules de base (ligne 1 d'affichage) pour l'affichage
'dans l'ordre des Textbox : Id,marque,désignation,emplacement,magasin
Const cellulesDébut = "d15,d17,i15,m15,n17"
Const decalage = 5 'le décalage entre chaque écriture d'un bloc
'sur la feuille sortie
Dim i As Long, j As Long, xdecal As Long
Dim tAdresseBase 'le tableau des adresses de base
Dim Nieme As Long ' le numéro de la textbox à afficher
'on transfère le texte cellulesDébut dans le tableau tAdresseBase
tAdresseBase = Split(cellulesDébut, ",") 'attention tableau de base 0
'(1er indice= 0 et non 1)
With Sheets("Sortie")
'effacement des précédentes données
Intersect(.Rows("15:" & .Rows.Count), .UsedRange).ClearContents
'boucle d'écriture
For i = 1 To 11
'si la ligne est vide
If Me("T" & (1 + (i - 1) * 5)) = "" Then Exit For
'boucle d'écriture d'une ligne - on boucle sur les 5 TextBox
xdecal = 5 * (i - 1)
For j = 1 To 5
Nieme = 1 + 5 * (i - 1) + (j - 1)
.Range(tAdresseBase(j - 1)).Offset(xdecal) = Controls("T" & Nieme).Text
Next j
Next i
End With
Unload Me
Worksheets("Sortie").Activate
End Sub