Private Sub cmdbexporter_Click()
If ListView1.ListItems.Count = 0 Then Exit Sub
Dim fichier As Variant, feuille As Worksheet, lig As Long, a(), i As Long, j As Byte
fichier = Application.GetOpenFilename(Title:="CHOISSEZ LE FICHIER", FileFilter:="Fichiers Excel(*.xls*),*xls*", ButtonText:="CLIQUEZ")
If fichier = False Then Exit Sub 'Annuler
If fichier = ThisWorkbook.FullName Then Exit Sub
Application.ScreenUpdating = False
Unload Me 'ferme l'UserForm
Set feuille = Workbooks.Open(fichier).Sheets("gestion des donnees")
lig = 10 '1ère ligne de restitution
ReDim a(1 To ListView1.ListItems.Count, 1 To ListView1.ColumnHeaders.Count) 'tableau VBA, plus rapide
If feuille.Cells(lig, 1) <> "" Then feuille.Rows(lig).Resize(UBound(a)).Insert
For i = 1 To ListView1.ListItems.Count
a(i, 1) = ListView1.ListItems(i).Text
For j = 1 To ListView1.ColumnHeaders.Count - 1
a(i, j + 1) = ListView1.ListItems(i).ListSubItems(j).Text
Next j, i
feuille.Cells(lig, 1).Resize(i - 1, j) = a 'restitution
End Sub