[RESOLU] Imprimer le contenu d'une listbox d'un usf

MaximeRoth

XLDnaute Junior
Bonjour,

Je souhaite imprimer le contenu d'une ListBox présente sur un USF.
J'ai trouvé ceci:

Code:
Sub Impre()
Dim Tableau() As Variant
Dim i As Integer
Dim j As Byte
 
Application.ScreenUpdating = False
Workbooks.Add 'création d'un nouveau classeur temporaire
 
Tableau() = ListBox1.List
j = ListBox1.ColumnCount
i = ListBox1.ListCount
Range("A1:" & Cells(i, j).Address) = Tableau()
 
'option pour adapter la largeur des colonnes à la taille des données
'ActiveSheet.Range("A1:" & Cells(i, j).Address).EntireColumn.AutoFit
 
ActiveWorkbook.PrintOut 'impression
ActiveWorkbook.Close False 'suppression du classeur temporaire
Application.ScreenUpdating = True
 
End Sub

Cependant lors de l'exécution j'ai un message d'erreur : " Erreur 424 : Objet Requis ".

Ma ListBox s'appelle bien ListBox 1.

Pour info la listbox est alimentée par une recherche en cascade, j'ai 7 colonnes en entrées qui me permettent un tri selon 7 critères.

Je ne peux malheureusement pas partager le fichier car le contenu des tableaux est confidentiel. (Si besoin je m'appliquerai à faire un ménage =D)

A+

Max
 
Dernière édition:

MaximeRoth

XLDnaute Junior
Re : Imprimer le contenu d'une listbox d'un usf

Salut BrunoM45,

L'erreur apparaît à la ligne :
"Tableau() = ListBox1.List"

A+

Max


EDIT: Ci joint mon fichier. Je cherche à imprimer la ListBox1 du USF "search". Pour accédé depuis la page d'accueil ("Home") cliquer sur "Rechercher/Modifier/Supprimer un enregistrement". Et "Imprimer" pour tester. La SUB "Impre" est dans le module 3.
 

Pièces jointes

  • Numéro de Série Proto V46 test.zip
    258.3 KB · Affichages: 235
Dernière édition:
C

Compte Supprimé 979

Guest
Re : Imprimer le contenu d'une listbox d'un usf

Re,

Okkkk j'ai compris ...

Tu mets le code dans un module, alors que celui-ci concerne un contrôle d'un USF
(tu le mets toi même dans le titre)

Donc, soit :

1) tu mets le code dans ton USF

2) tu ajoutes le nom de ton USF
soit
Code:
Sub Impre()
  Dim Tableau() As String
  Dim i As Integer
  Dim j As Byte


  Application.ScreenUpdating = False
  Workbooks.Add  'création d'un nouveau classeur temporaire


  With search
    Tableau() = .ListBox1.List
    j = .ListBox1.ColumnCount
    i = .ListBox1.ListCount
  End With
  Range("A1:" & Cells(i, j).Address) = Tableau()


  'option pour adapter la largeur des colonnes à la taille des données
  'ActiveSheet.Range("A1:" & Cells(i, j).Address).EntireColumn.AutoFit


  ActiveWorkbook.PrintOut  'impression
  ActiveWorkbook.Close False  'suppression du classeur temporaire
  Application.ScreenUpdating = True


End Sub

Sachant que tu as des bugs partout, je n'ai pas pu tester

A+
 

MaximeRoth

XLDnaute Junior
Re : Imprimer le contenu d'une listbox d'un usf

Re,

Merci en effet ça marche beaucoup mieux comme ça =D.
Cependant j'arrive bien à avoir l'ordre d'impression mais je ne contrôle pas l'imprimante cible.
Sais tu si il possible d'avoir la main sur cela, voir d'ouvrir un menu standard d'impression avec le choix d'imprimante ?

A+

EDIT:
Pour avoir le choix de l'imprimante sélectionner celle que vous voulez comme votre imprimante par défaut ==> Panneau de configuration\Matériel et audio\Périphériques et imprimantes Clique droit sur celle que l'on veut "Définir comme Imprimante par Défaut"
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 225
Messages
2 086 412
Membres
103 202
dernier inscrit
Claire2BM