Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Imprimer listbox

2 réponses
Avatar
GIBI68
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

2 réponses

Avatar
LSteph
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



Avatar
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