Impression avec un userform d'un autre fichier Excel

Bonjour à tous et merci d'avance pour toute aide que vous pourriez m'apporter.

J'ai une application de gestion de commande sur un fichier excel avec un UserForm. Cette application permet déjà de faire des impressions de certains onglet de ce fichier excel à partir d'un CommandButton.

Je voudrais savoir s'il est possible de programmer un autre CommandButton de ce même UserForm, afin d'imprimer une feuille d'un autre fichier dans le même répertoire.

Dans l'affirmative, pourriez-vous me faire parvenir le code VBA que je devrais insérer dans la Private Sub?

Mille mercis!

Bonjour,

Voici un exemple,

Sub ouvrir_fichier_pour_imprimer()
Dim monfichier, wk1 As Workbook, wk2 As Workbook, monfichier As String
Set wk1 = ThisWorkbook
    monfichier = "C:\Users\isabelle\Documents\base.xlsx"    'adapter
    Application.ScreenUpdating = False   'ScreenUpdating = True automatiquement à End Sub
    Workbooks.Open Filename:=monfichier
    Set wk2 = ActiveWorkbook
    wk2.Worksheets(1).Activate  'adapter pour la feuille à imprimer --> wk2.Worksheets("blabla").Activate
    wk2.ActiveSheet.PrintPreview  'ou .PrintOut
    wk2.Close SaveChanges:=False  'fermer le fichier sans l'enregistrer
wk1.Activate
End Sub

Bonjour,

Merci beaucoup d'avoir répondu aussi vite. J'ai adapté et installé votre code d'impression (voir ci-dessous) dans une CommandButton que j'utilisais déjà pour imprimer des onglets du fichier hébergeant le UserForm, et dont j'ai mis le code en commentaire.

J'ai donc essayé de faire tourner votre code, mais sans succès, ni avec .PrintOut ni avec .PrintReview.

Lorsque je clique sur la CommandButton7 rien ne se passe. N'étant pas connaisseur en VBA (je n'ai que quelques notions), je n'ai pas décelé l'erreur que j'ai pu faire.

Merci pour votre aide.

'Programme de l' I M P R E S S I O N de toutes feuilles

' Private Sub CommandButton7_Click()

'Sheets("clients").PrintOut

'Sheets("alex").PrintOut

'Sheets("geof").PrintOut

'Sheets("divers").PrintOut

' End Sub

'Programme de l' I M P R E S S I O N du fichier de production des 2 jours

Sub ouvrir_fichier_pour_imprimer()

Dim monfichier, wk1 As Workbook, wk2 As Workbook, monfichier As String

Set wk1 = ThisWorkbook

' monfichier = "C:\Users\isabelle\Documents\base.xlsx" 'adapter

monfichier = "C:\Users\user\Documents\Boulangerie Boutique\Noël\Noël 20XX\fichier d'essai\production_2jours.xls"

Application.ScreenUpdating = False 'ScreenUpdating = True automatiquement à End Sub

Workbooks.Open Filename:=monfichier

Set wk2 = ActiveWorkbook

wk2.Worksheets(Feuil1).Activate 'adapter pour la feuille à imprimer --> wk2.Worksheets("blabla").Activate

wk2.ActiveSheet.PrintPreview 'ou .PrintOut

wk2.Close SaveChanges:=False 'fermer le fichier sans l'enregistrer

wk1.Activate

End Sub

re,

à tester,

Private Sub CommandButton7_Click()
Call ouvrir_fichier_pour_imprimer
 'Sheets("clients").PrintOut
 'Sheets("alex").PrintOut
 'Sheets("geof").PrintOut
 'Sheets("divers").PrintOut
End Sub

Sub ouvrir_fichier_pour_imprimer()
Dim  wk1 As Workbook, wk2 As Workbook, monfichier As String
Set wk1 = ThisWorkbook
' monfichier = "C:\Users\isabelle\Documents\base.xlsx" 'adapter
monfichier = "C:\Users\user\Documents\Boulangerie Boutique\Noël\Noël 20XX\fichier d'essai\production_2jours.xls"
Application.ScreenUpdating = False 'ScreenUpdating = True automatiquement à End Sub
Workbooks.Open Filename:=monfichier
Set wk2 = ActiveWorkbook
wk2.Worksheets("Feuil1").Activate 'adapter pour la feuille à imprimer --> wk2.Worksheets("blabla").Activate
wk2.ActiveSheet.PrintPreview 'ou .PrintOut
wk2.Close SaveChanges:=False 'fermer le fichier sans l'enregistrer
wk1.Activate
End Sub

Bonjour, et de nouveau, merci pour votre réponse rapide. J'ai copié collé tout le code que vous m'avez renvoyé, en repérant les erreurs que j'avais introduit dans le premier exercice! Et votre code fonctionne parfaitement! Merci!

Rechercher des sujets similaires à "impression userform fichier"