Parcourir les cellules dans des boucles est assez lent. On peut faire un copier coller, plus rapide.
ws est la feuille de calcul.
1 2 3 4 5
|
Me.DataGridView1.SelectAll()
Clipboard.SetDataObject(DataGridView1.GetClipboardContent)
ws.Range("A1").Select()
ws.PasteSpecial(Format:="HTML") |
C'est presque la même solution que celle donnée plus haut par Kropernic. Cependant, selon les données il peut être avantageux de les coller en format HTML.
Attention également quand il y a des données DATETIME ! La meilleure solution que j'ai trouvée dans ce cas, est de les enregistrer au format double (DateTime.ToOADate) dans le DataGridView. Après le transfert dans Excel, modifiez le format de la colonne qui contient ces données. Par exemple :
ws.Range("A:A").NumberFormat = "dd/MM/yy hh:mm:ss"
Partager