' ' Sub Lancer_impression(ByVal Listview As ListView) Dim S1 As String Dim FNxls As String Dim iCol As Integer Dim oXL As Object Dim oBook As Object Dim oSheet As Object Dim monProcess As New Process() S1 =Application.StartupPath ' Retourne le chemin d'accèsde l'application If Mid(S1, Len(S1) - 1) <> "\" Then S1 = S1 & "\" FNxls = S1 & "Excel.xls" ' Creer l'application XL oXL = CreateObject("Excel.Application") oBook = oXL.Workbooks.Add ' Ajout d'un classeur oSheet = oBook.Worksheets(1) ' Ajout d'une feuille With oSheet For i Asinteger = 0 To ListView.Columns.Count - 1 ' Permet d'ajouter les nomsdes colonnes de la listview passer en paramètre dans le fichier XL .Cells(1, i+1) = ListView.Columns(i).Text Next 'Boucle ajoutant tout les items contenus dans la ListView dans lefichier excel For iCol = 0 To ListView.Items.Count - 1 lvItem = ListView.Items(iCol) .Cells(iCol + 3, 1) = lvItem.SubItems(0).Text .Cells(iCol + 3, 2) = lvItem.SubItems(1).Text .Cells(iCol + 3, 3) = lvItem.SubItems(2).Text .Cells(iCol + 3, 4) = lvItem.SubItems(3).Text .Cells(iCol + 3, 4).HorizontalAlignment = 3 ' Permet de centrer dans lacellule ( 2 : à gauche 3 : centrer 4 : à droite ) ' Ligne précédente peut être supprimé si pas de formatage voulu pourles cellules .Cells(iCol + 3, 5) = lvItem.SubItems(4).Text .Cells(iCol + 3, 5).HorizontalAlignment = 3 .Cells(iCol + 3, 6) = lvItem.SubItems(5).Text .Cells(iCol + 3, 6).HorizontalAlignment = 3 .Cells(iCol + 3, 7) = lvItem.SubItems(6).Text .Cells(iCol + 3, 7).HorizontalAlignment = 3 Next End With ' 1° Ligne : Titres en Gras oSheet.Rows(1).Font.Bold = True ' Largeur des colonnes oSheet.Columns("A:A").ColumnWidth = 33.71 ' Colonne 1 oSheet.Columns("B:B").ColumnWidth = 33.71 ' Colonne 2 ' Paramétrer les marges de la feuille oSheet.PageSetup.LeftMargin= 0.393700787401575 ' Marge de gauche oSheet.PageSetup.RightMargin = 0.393700787401575 ' Marge de droite oSheet.PageSetup.TopMargin =0.393700787401575 ' Marge du haut oSheet.PageSetup.BottomMargin = 0.393700787401575 ' Marge du bas ' Afficher le quadrillage sur la feuille oSheet.PageSetup.PrintGridlines = True ' Afficher le tableau de manière centrer horizontalement sur la feuille oSheet.PageSetup.CenterHorizontally = True ' Paramétrer la feuille en mode Paysage oSheet.PageSetup.Orientation 2 ' ( 1 : Portrait ) oXL.ActiveSheet.printout() ' Lancer l'impression oXL.Quit() ' Ferme le processus End Sub ' '