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

Comment imprimer un onglet voulu dans plusieurs classeurs identiques fermés ?

3 réponses
Avatar
Akira
Bonjour à tous.

Je dispose de plusieurs classeurs Excel structurés de la même manière
(avec des données différentes).
Je désire placer un bouton sur un classeur "Conso" qui permette de
choisir un onglet et d'imprimer automatiquement cet onglet pour tous
les autres classeurs consolidés (connus dans un tableau)

Existe-t-il une fonction qui permette (un peu comme le permet la
fonction ExecuteExcel4Macro pour lire le contenu d'une cellule) de
lancer l'impression dans un classeur, d'un onglet voulu sans avoir à
ouvrir ce dernier ???

J'aimerai éviter d'avoir à ouvir chacun des classeurs, puis de me
positionner sur l'onglet désiré avant de lancer un PrinOut.

Merci de votre aide et bonne journée à tous.

3 réponses

Avatar
anonymousA
bonjour,

en MacroExcel4 je ne connais pas mais sait-on jamais. Par contre, quel
problème pourrait-il y avoir à ouvrir un fichier , puis ensuite à
imprimer l'onglet souhaité et ce par programmation ce qui serait très
rapide et invisible pour l'utilisateur.

A+
Avatar
Akira
Juste pour une question de "confort".

Je préfèrerai utiliser une fonction du genre
MacroExcel4Print(Chemin, fichier, feuille)

Une seule ligne de code et aucune gestion de ScreenUpdating, etc...

C'est peut-être idiot de ma part, mais bon ;-)




anonymousA avait écrit le 29/09/2005 :
bonjour,

en MacroExcel4 je ne connais pas mais sait-on jamais. Par contre, quel
problème pourrait-il y avoir à ouvrir un fichier , puis ensuite à
imprimer l'onglet souhaité et ce par programmation ce qui serait très
rapide et invisible pour l'utilisateur.

A+


Avatar
michdenis
Bonjour Akira,

Tu peux copier ceci dans un module standard. 2 variables "Fichier" et "NomFeuille" de la procédure LancerImpression à renseigner.

'------------------------------------
Sub LancerImpression()

Dim Fichier As String, NomFeuille As String
Application.ScreenUpdating = False

Fichier = "c:AtravailClasseur1.xls" 'à déterminer
NomFeuille = "Feuil1" 'à déterminer

If Dir(Fichier) <> "" Then
Impression Fichier, NomFeuille
Else
MsgBox "Ce fichier : " & Fichier & " est inexistant."
End If

End Sub


'------------------------------------
Sub Impression(Fichier As String, Optional Feuille As String)

Dim Wk As Workbook
Set Wk = Workbooks.Open(Fichier)

If Feuille = "" Then
Wk.PrintOut
Else
With Wk
With .Worksheets("Feuil1")
.PrintOut 'paramêtres de la méthode au besoin
If Err <> 0 Then
On Error GoTo 0
MsgBox "Ce fichier : " & Fichier & _
" ne possède pas de feuille ayant le nom : " & _
Feuille & ".", vbCritical + vbOKOnly, "Attention"
End If
End With
End With
End If
Wk.Close False
Set Wk = Nothing
End Sub
'------------------------------------


Salutations!




"Akira" a écrit dans le message de news:
Bonjour à tous.

Je dispose de plusieurs classeurs Excel structurés de la même manière
(avec des données différentes).
Je désire placer un bouton sur un classeur "Conso" qui permette de
choisir un onglet et d'imprimer automatiquement cet onglet pour tous
les autres classeurs consolidés (connus dans un tableau)

Existe-t-il une fonction qui permette (un peu comme le permet la
fonction ExecuteExcel4Macro pour lire le contenu d'une cellule) de
lancer l'impression dans un classeur, d'un onglet voulu sans avoir à
ouvrir ce dernier ???

J'aimerai éviter d'avoir à ouvir chacun des classeurs, puis de me
positionner sur l'onglet désiré avant de lancer un PrinOut.

Merci de votre aide et bonne journée à tous.