XL 2013 Impression PDF d'onglets sélectionner à l'aide d'un UserForm

Papito-60

XLDnaute Nouveau
Bonjour,
Novice en VBA, j'ai créé un code afin d'imprimer papier des onglets de mon xls que je sélectionne à l'aide d'un UserForm (case à cocher), ci dessous le code :
Private Sub CmdImprimer_Click()

Application.ScreenUpdating = False
For i = 0 To LbFeuilles.ListCount - 1
If LbFeuilles.Selected(i) = True Then
Application.StatusBar = "Impression: " & LbFeuilles.List(i)
Application.DisplayAlerts = False
Sheets(LbFeuilles.List(i)).PrintOut

Else
End If
Next i
Application.DisplayAlerts = True
Application.StatusBar = False
Application.ScreenUpdating = True

End Sub

Mon UserForm :
1582916271177.png


Je cherche à faire la même chose avec une impression en PDF dans un répertoire et nom de fichier bien définis. Cependant le code Bug et n'arrive pas à comprendre mon erreur. Ci dessous le code (en jaune la partie qui BUG) :

Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
For i = 0 To LbFeuilles.ListCount - 1
If LbFeuilles.Selected(i) = True Then
Application.StatusBar = "Impression: " & LbFeuilles.List(i)
Application.DisplayAlerts = False

Dim chemin As String, fichier As String
chemin = ThisWorkbook.Path & Application.PathSeparator
fichier = " CR Surveillance - Marché N°" & Sheets("Synthèse du Rapport").Range("C11") & "_" & Format(Date, "dd-mm-yyyy")

Sheets(LbFeuilles.List(i)).ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & fichier _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True

Else
End If
Next i
Application.DisplayAlerts = True
Application.StatusBar = False
Application.ScreenUpdating = True

End Sub

J'ai essayé avec un seul onglet sélectionné mais c'est la même chose. Je pensais que cela venait du MultiPDF à créer.
Si vous avez une solution, je suis preneur.
Merci les experts
PAPITO
 
Solution
Salut, une autre approche. Avec la possibilité de fusion en 1 seul pdf de l'ensemble des feuilles, ou de génération des feuilles sélectionnées de façon séparée, de gestion des doublons via un indice, le tout dans un dossier créé automatiquement et nommé par défaut Dossier PDFs à la racine de l'application. L'ensemble des feuilles ( visibles ou pas ) est listé via le bouton Récap.

Office 32 bits est recommandé pour la plupart des utilisateurs.
Nous recommandons la version 32 bits d’Office pour la plupart des utilisateurs, car elle offre une plus grande compatibilité avec la plupart des autres applications, en particulier les compléments tiers. C’est la raison pour laquelle la version 32 bits d’Office...

kiki29

XLDnaute Barbatruc
Salut, une autre approche. Avec la possibilité de fusion en 1 seul pdf de l'ensemble des feuilles, ou de génération des feuilles sélectionnées de façon séparée, de gestion des doublons via un indice, le tout dans un dossier créé automatiquement et nommé par défaut Dossier PDFs à la racine de l'application. L'ensemble des feuilles ( visibles ou pas ) est listé via le bouton Récap.

Office 32 bits est recommandé pour la plupart des utilisateurs.
Nous recommandons la version 32 bits d’Office pour la plupart des utilisateurs, car elle offre une plus grande compatibilité avec la plupart des autres applications, en particulier les compléments tiers. C’est la raison pour laquelle la version 32 bits d’Office est installée par défaut, même sur les systèmes d’exploitation Windows 64 bits. Sur ces systèmes, le client Office 32 bits est pris en charge en tant qu’installation Windows-32-on-Windows-64 (WOW64). WOW64 est l’émulateur x86 qui permet l’exécution de façon transparente des applications Windows 32 bits sur les systèmes Windows 64 bits. Cela permet aux utilisateurs de continuer à utiliser les contrôles ActiveX et les compléments COM Microsoft avec la version 32 bits d’Office.
 

Pièces jointes

  • 1.jpg
    1.jpg
    148.3 KB · Affichages: 224
  • Impression_Onglets_PDF.zip
    40 KB · Affichages: 202
  • Version_Light.zip
    27.5 KB · Affichages: 78
Dernière édition:

Papito-60

XLDnaute Nouveau
Salut, une autre approche. Avec la possibilité de fusion en 1 seul pdf de l'ensemble des feuilles, ou de génération des feuilles sélectionnées de façon séparée, de gestion des doublons via un indice, le tout dans un dossier créé automatiquement et nommé par défaut Dossier PDFs à la racine de l'application. L'ensemble des feuilles ( visibles ou pas ) est listé via le bouton Récap.

ça fonctionne parfaitement merci
 

kiki29

XLDnaute Barbatruc
Salut, tjs valable

Office 32 bits est recommandé pour la plupart des utilisateurs.
Nous recommandons la version 32 bits d’Office pour la plupart des utilisateurs, car elle offre une plus grande compatibilité avec la plupart des autres applications, en particulier les compléments tiers. C’est la raison pour laquelle la version 32 bits d’Office est installée par défaut, même sur les systèmes d’exploitation Windows 64 bits. Sur ces systèmes, le client Office 32 bits est pris en charge en tant qu’installation Windows-32-on-Windows-64 (WOW64). WOW64 est l’émulateur x86 qui permet l’exécution de façon transparente des applications Windows 32 bits sur les systèmes Windows 64 bits. Cela permet aux utilisateurs de continuer à utiliser les contrôles ActiveX et les compléments COM Microsoft avec la version 32 bits d’Office.
La version light du Post#2 est une version sans APIs.
Sinon voir ceci
 
Dernière édition:

Discussions similaires