XL 2019 UserForm Imprimer - Exporter la sélection du "ListView1".

YAP32

XLDnaute Occasionnel
Bonjour,

Voilà j'ai un tableau client fictif dont j'ai un UserForm qui permet de choisir par sélection exemple ici via type de recherche : destinataire et une lettre pour les clients qui commence par la lettre M jusque là tout va bien.

Mais une fois sélectionné, je souhaite avoir l'aperçue avant l'impression (PrintPreview) uniquement pour ceux qui sont sélectionnés et non de toute ma feuille comme mon cas et la même chose pour l'exportation en "csv" via le UserForm avec ma feuille l'exportation fonctionne.

Merci d'avance
@+
 

Pièces jointes

  • PRINT_EXPORT.xlsm
    52 KB · Affichages: 14

YAP32

XLDnaute Occasionnel
Bonsoir Chti160,

Merci pour ton aide j'ai essayé avec filtre sur mon tableau mais rien n'a changé.
YAP32
Bonjour Chti160,

J'ai essayé avec le code ci-dessous mais il efface complètement mon tableau sauf dernier ligne puis plus rien dans PPview

Merci si tu pourrais me dire où je coule.


VB:
Private Sub CommandButton4_Click()
Dim I As Integer

  With Sheets("Historique_Facture")
    ''.Range("T_Historique").ClearContents
    .ListObjects("T_Historique).Resize .Range("A1:K1").Resize(Me.ListView1.ListItems.Count + 1)
    For I = 1 To Me.ListView1.ListItems.Count
      .Range("A" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(1).Text
      .Range("B" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(2).Text
      .Range("C" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(3).Text
      .Range("D" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(4).Text
      .Range("E" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(5).Text
      .Range("F" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(6).Text
      .Range("G" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(7).Text
      .Range("H" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(8).Text
      .Range("I" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(9).Text
      .Range("J" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(10).Text
      .Range("K" & I + 1).Value = Me.ListView1.ListItems(I).ListSubItems(11).Text
      
    Next I
    Me.Hide
    .PrintPreview
    UserForm2.Show
  End With
End Sub

Merci
 

YAP32

XLDnaute Occasionnel
Bonjour YAP32
Tu pourrais aussi pour simplifier passer par Une Feuille qui Contiendrait les données à Imprimer !
voir Vidéo
Jean marie
Bonjour Chti160,
Les données à imprimer de mon tableau (T_Historique) collectés des données suite à une incrémentation de facture si je créée une nouvelle feuille ça va être le même scenario car les lignes +1 🤔
Merci
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
Bonjour le Fil

Je te mets le fichier Non finalisé !
J'ai ajouté une feuille "Sheet To Print"
J'y ai créé un Tableau Structuré nommé "t_Sheet_Print"
Puis, j'ai mis pour tester un Bouton sur cette Feuille "PrintPreview"
J'ai aussi modifié le format des Colonne "Sous-total HT" et "Total TTC"
J'ai masqué, pour le test les deux Boutons "Imprimer" et "Exporter en CSV"
Voir le Bouton sur la feuille "Sheet To Print" qui n'est visible , que s'il y a des données à Imprimer !
Tu regardes et tu me dis !

si besoin je peux commenter le Code !

Peux-tu m'expliquer :​
Les données à imprimer de mon tableau (T_Historique) collectés des données suite à une incrémentation de facture si je créée une nouvelle feuille ça va être le même scenario car les lignes +1

Bonne fin de Journée

Jean marie​
 

Pièces jointes

  • PRINT_EXPORT Chti160-1.xlsm
    67.3 KB · Affichages: 8

YAP32

XLDnaute Occasionnel
Bonjour le Fil

Je te mets le fichier Non finalisé !
J'ai ajouté une feuille "Sheet To Print"
J'y ai créé un Tableau Structuré nommé "t_Sheet_Print"
Puis, j'ai mis pour tester un Bouton sur cette Feuille "PrintPreview"
J'ai aussi modifié le format des Colonne "Sous-total HT" et "Total TTC"
J'ai masqué, pour le test les deux Boutons "Imprimer" et "Exporter en CSV"
Voir le Bouton sur la feuille "Sheet To Print" qui n'est visible , que s'il y a des données à Imprimer !
Tu regardes et tu me dis !

si besoin je peux commenter le Code !

Peux-tu m'expliquer :


Bonne fin de Journée

Jean marie​
Bonsoir Chti160,

Je te remercie pour ce travail magnifique c'est Nickel! effectivement la feuille "Sheet To Print pour le USERFORM était nécessaire. Sauf qu'il doit se mettre à jour par rapport à ma feuille "Historique_Facture" car comme expliqué et la réponse à ta question dans ma feuille "Historique_Facture" chaque ligne s'ajoute après l'éxecution d'une macro nommé archivage càd pour chaque facture créée je l'archive dans un dossier ainsi la numération de facture (incrémenter) se fait automatiquement et aussi la dernière colonne me donne la possibilité de voir la facture en PDF en cliquant dessus qui se trouve dans mon dossier archive.

Sinon c'est impeccable si a feuille "Sheet To Print" se met ajour. (Du coup les boutons seront nécessaire sur le USERFORM.

Par contre je viens de trouvé un fichier sur un des forums qui fait se qu'on souhaite.
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
Bonjour YAP32
je vois que tu n'y arrive pas avec ce que tu as
il faudrait que tu expliques ceux-ci :
Je te remercie pour ce travail magnifique c'est Nickel! effectivement la feuille "Sheet To Print pour le USERFORM était nécessaire. Sauf qu'il doit se mettre à jour par rapport à ma feuille "Historique_Facture" car comme expliqué et la réponse à ta question dans ma feuille "Historique_Facture" chaque ligne s'ajoute après l'éxecution d'une macro nommé archivage càd pour chaque facture créée je l'archive dans un dossier ainsi la numération de facture (incrémenter) se fait automatiquement et aussi la dernière colonne me donne la possibilité de voir la facture en PDF en cliquant dessus qui se trouve dans mon dossier archive.

Sinon c'est impeccable si a feuille "Sheet To Print" se met ajour. (Du coup les boutons seront nécessaire sur le USERFORM.
Ensuite peut-être on pourra une fois compris t'aider.
Bonne Journée
Jean marie
 

YAP32

XLDnaute Occasionnel
Bonjour YAP32
je vois que tu n'y arrive pas avec ce que tu as
il faudrait que tu expliques ceux-ci :

Ensuite peut-être on pourra une fois compris t'aider.
Bonne Journée
Jean marie
Bonjour Chti160,

Oui pas grand chose sur google à propos d'utilisation de Listview dans un UserForm. ;) J'espere que je vais pouvoir être explicite.

Votre idée de la feuille "Sheet To Print" est bien nécessaire pour imprimer ou exporter une sélection à condition que pour chaque nouvelle entrée (une nouvelle facture) dans "Historique_Facture" la feuille "Sheet to print" devrait le voir. Mais chaque nouvelle entrée dans la base de donnée d'"Historique_Facture" va augmenter le nombre de ligne et pour que la feuille "Sheet to print" ne soit pas trop charger peut-être à chaque PrintPreview c'est de copier la sélection du Listview sur "Sheet to print" une fois imprimé ou visualisé ou exporté il faut l'enlever (Kill) les infos sur de la feuille "Sheet to print" je ne sais pas je pense a haute voix mais bon.

J'espere avoir été explicite :)

Bien cordialement
A+
 

Discussions similaires

Réponses
3
Affichages
2 K

Membres actuellement en ligne

Statistiques des forums

Discussions
312 215
Messages
2 086 330
Membres
103 187
dernier inscrit
ebenhamel