Bonjour bebley,
Dans votre code que vaut "x" ?
Je ne vois nulle part initialisé. Or c'est "x" qui fixe la ligne où ecrire.
Merci sylvanu pour votre action.
X représente la ligne active dans laquelle les enregistrements doivent commencé
Voici entièrement le code
Dim i as integer
Dim x as long
Dim ws as worksheet
' j'ai défini la feuille active dans laquelle je veux insérer mes données depuis la listbox
Ws= sheets("Nomenclature_ matériaux_ infra")
Ws. Activate
' j'ai défini la dernière ligne
Finalrow= ws.cells(rows. count,2).end( xlup).row
' vue que le tableau contient déjà quelques données , je veux que les enregistrements commencent à la 6 iem ligne que finalrow aurait détecté. Donc j'ai défini la variable x
X= finalrow-6
For i=0 To Me.list_des_taches.listcount-1
Rows(x & ":" & x).insert shift:=xldown
Cells(x,2)=Me.list_des_taches.list(i,0)
Cells(x,3)=Me.list_des_taches.list(i,1)
Cells(x,4)=Me.list_des_taches.list(i,8)
End if
Next i
End dub
Le code fonctionne parfaitement à la seule différence que les enregistrements dans le tableau sont renversé comme je l'ai expliqué déjà.