Bonjour GB, Exemple si la liste comme je le présume est dans un userform:
Private Sub ListBox1_DblClick(ByVal Cancel As _ MSForms.ReturnBoolean) Me.PrintForm End Sub
'lSteph
"GIBI68" a écrit dans le message de news:
Bonjour à tous,
Je voudrais imprimer le contenu d'un listbox que je remplis avec : liste1.List() = MyArray
Je ne trouve pas de solution simple
Merci du coup de main
michdenis
Bonjour Gib168,
Les 3 procédures suivantes font : A ) Prend le contenu d'un Combobox ou Listbox et crée un fichier .csv B ) Ouvre le fichier .csv dans excel C ) Affiche Aperçu avant impression D ) à la fermeture de cette fenêtre ferme le fichier et supprime le fichier originale .csv.
'----------------------------------- Sub EnregistrerFormatSpecial()
Dim Séparateur As String Dim NomFichierSauvegarde As String Dim Tblo As Variant
With Userform1.Combobox1 Tblo = .List End With Séparateur = ";" NomFichierSauvegarde = "C:Denis.csv"
SaveAsCSV Tblo, Séparateur, NomFichierSauvegarde Application.ScreenUpdating = False OpenCSV NomFichierSauvegarde With ActiveWorkbook .Worksheets(1).PrintPreview .Close False End With Kill NomFichierSauvegarde
End Sub '----------------------------------- Sub SaveAsCSV(T As Variant, Séparateur As String, _ NomFichierSauvegarde As String)
Dim Temp As String Dim A As Long, B As Long Open NomFichierSauvegarde For Output As #1 For A = 1 To UBound(T, 1) Temp = "" For B = 1 To UBound(T, 2) Temp = Temp & T(A, B) & Séparateur Next Temp = Left(Temp, Len(Temp) - 1) Print #1, Temp Next Close
End Sub '-----------------------------------
Sub OpenCSV(FileName As String) 'Patrick Penet, mpfe 'ouvre un fichier texte (ou csv) 'Notez que: 'l'instruction 'magique' est TextToColumns.
Dim wb As Workbook With Application .DisplayAlerts = False .ScreenUpdating = False
On Error GoTo GE Set wb = .Workbooks.Open(FileName) wb.Sheets(1).Columns(1).TextToColumns Range("A1"), , , False, , True On Error GoTo 0
.DisplayAlerts = True .ScreenUpdating = True End With Exit Sub GE: 'Le fichier est introuvable End Sub '=================
Salutations!
"GIBI68" a écrit dans le message de news: Bonjour à tous,
Je voudrais imprimer le contenu d'un listbox que je remplis avec : liste1.List() = MyArray
Je ne trouve pas de solution simple
Merci du coup de main
Bonjour Gib168,
Les 3 procédures suivantes font :
A ) Prend le contenu d'un Combobox ou Listbox
et crée un fichier .csv
B ) Ouvre le fichier .csv dans excel
C ) Affiche Aperçu avant impression
D ) à la fermeture de cette fenêtre
ferme le fichier et supprime le fichier originale .csv.
'-----------------------------------
Sub EnregistrerFormatSpecial()
Dim Séparateur As String
Dim NomFichierSauvegarde As String
Dim Tblo As Variant
With Userform1.Combobox1
Tblo = .List
End With
Séparateur = ";"
NomFichierSauvegarde = "C:Denis.csv"
SaveAsCSV Tblo, Séparateur, NomFichierSauvegarde
Application.ScreenUpdating = False
OpenCSV NomFichierSauvegarde
With ActiveWorkbook
.Worksheets(1).PrintPreview
.Close False
End With
Kill NomFichierSauvegarde
End Sub
'-----------------------------------
Sub SaveAsCSV(T As Variant, Séparateur As String, _
NomFichierSauvegarde As String)
Dim Temp As String
Dim A As Long, B As Long
Open NomFichierSauvegarde For Output As #1
For A = 1 To UBound(T, 1)
Temp = ""
For B = 1 To UBound(T, 2)
Temp = Temp & T(A, B) & Séparateur
Next
Temp = Left(Temp, Len(Temp) - 1)
Print #1, Temp
Next
Close
End Sub
'-----------------------------------
Sub OpenCSV(FileName As String)
'Patrick Penet, mpfe
'ouvre un fichier texte (ou csv)
'Notez que:
'l'instruction 'magique' est TextToColumns.
Dim wb As Workbook
With Application
.DisplayAlerts = False
.ScreenUpdating = False
On Error GoTo GE
Set wb = .Workbooks.Open(FileName)
wb.Sheets(1).Columns(1).TextToColumns Range("A1"), , , False, , True
On Error GoTo 0
.DisplayAlerts = True
.ScreenUpdating = True
End With
Exit Sub
GE:
'Le fichier est introuvable
End Sub
'=================
Salutations!
"GIBI68" <jean-michel@sonoma.fr> a écrit dans le message de news: ONrGvyFFGHA.376@TK2MSFTNGP12.phx.gbl...
Bonjour à tous,
Je voudrais imprimer le contenu d'un listbox que je remplis avec :
liste1.List() = MyArray
Les 3 procédures suivantes font : A ) Prend le contenu d'un Combobox ou Listbox et crée un fichier .csv B ) Ouvre le fichier .csv dans excel C ) Affiche Aperçu avant impression D ) à la fermeture de cette fenêtre ferme le fichier et supprime le fichier originale .csv.
'----------------------------------- Sub EnregistrerFormatSpecial()
Dim Séparateur As String Dim NomFichierSauvegarde As String Dim Tblo As Variant
With Userform1.Combobox1 Tblo = .List End With Séparateur = ";" NomFichierSauvegarde = "C:Denis.csv"
SaveAsCSV Tblo, Séparateur, NomFichierSauvegarde Application.ScreenUpdating = False OpenCSV NomFichierSauvegarde With ActiveWorkbook .Worksheets(1).PrintPreview .Close False End With Kill NomFichierSauvegarde
End Sub '----------------------------------- Sub SaveAsCSV(T As Variant, Séparateur As String, _ NomFichierSauvegarde As String)
Dim Temp As String Dim A As Long, B As Long Open NomFichierSauvegarde For Output As #1 For A = 1 To UBound(T, 1) Temp = "" For B = 1 To UBound(T, 2) Temp = Temp & T(A, B) & Séparateur Next Temp = Left(Temp, Len(Temp) - 1) Print #1, Temp Next Close
End Sub '-----------------------------------
Sub OpenCSV(FileName As String) 'Patrick Penet, mpfe 'ouvre un fichier texte (ou csv) 'Notez que: 'l'instruction 'magique' est TextToColumns.
Dim wb As Workbook With Application .DisplayAlerts = False .ScreenUpdating = False
On Error GoTo GE Set wb = .Workbooks.Open(FileName) wb.Sheets(1).Columns(1).TextToColumns Range("A1"), , , False, , True On Error GoTo 0
.DisplayAlerts = True .ScreenUpdating = True End With Exit Sub GE: 'Le fichier est introuvable End Sub '=================
Salutations!
"GIBI68" a écrit dans le message de news: Bonjour à tous,
Je voudrais imprimer le contenu d'un listbox que je remplis avec : liste1.List() = MyArray