VB6 - Export dans un fichier Excel (exemple)

cs_pcvesoul Messages postés 123 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 25 juillet 2007 - 22 sept. 2005 à 07:40
cs_pcvesoul Messages postés 123 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 25 juillet 2007 - 22 sept. 2005 à 07:40
Bonjour. Ceci n'est pas une question mais une synthèse de ma recherche d'hier que je souhaite partarger avec ceux qui en ont besoin.

Ci dessous, vous trouverez donc un code simple mais "complet" permettant de créer un fichier "Excel".


Set AppExcel = CreateObject("Excel.Application")


AppExcel.Visible = False


AppExcel.AlertBeforeOverwriting = False


AppExcel.DisplayAlerts = False


Set FichierExcel = AppExcel.Workbooks.Add




For Lig_Excel = 1 To 4


For Col_Excel = 1 To 10


AppExcel.Worksheets(1).Select ' Positionnement dans la feuille


AppExcel.Cells(Lig_Excel, Col_Excel).Select ' Positionnement dans la cellule


If Lig_Excel = 1 Then ' 1ère ligne


With AppExcel.Selection


.HorizontalAlignment = xlCenter ' Centré


End With


AppExcel.Selection.Font.Bold = True ' Gras


AppExcel.Worksheets(1).Cells(Lig_Excel, Col_Excel).Value = "Colonne " & Col_Excel


Else ‘ Lignes suivantes


With AppExcel.Selection


.HorizontalAlignment = xlCenter ' Centré (pas obligatoire mais pour l’exemple)


End With


If Col_Excel = 2 Then ' Mettre un nombre au format texte


AppExcel.Worksheets(1).Cells(Lig_Excel, Col_Excel).NumberFormat = "@"


ElseIf Col_Excel = 4 Then ' Mettre des 0 devant un nombre


AppExcel.Worksheets(1).Cells(Lig_Excel, Col_Excel).NumberFormat = String(5, "0")


ElseIf Col_Excel = 6 Then ' Mettre des décimales à la fin d'un nombre


AppExcel.Worksheets(1).Cells(Lig_Excel, Col_Excel).NumberFormat = "#,##0." & String(2, "0")


ElseIf Col_Excel = 8 Then


With AppExcel.Selection.Interior


.ColorIndex = Lig_Excel + 1 ' Mettre une couleur dans une cellule (le choix du code couleur n’est que pour l’exemple)


End With


End If


AppExcel.Worksheets(1).Cells(Lig_Excel, Col_Excel).Value = Lig_Excel * Col_Excel


End If


Next Col_Excel


Next Lig_Excel




FichierExcel.SaveAs "E:\Chasseco_2005\Exports\Export.xls", , , , , , , True


FichierExcel.Close


Set FichierExcel = Nothing


AppExcel.Quit


Set AppExcel = Nothing
Rejoignez-nous