Impression d'une plage de données en cliquant sur un lien

  • Initiateur de la discussion Initiateur de la discussion Celine1973
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

Celine1973

Guest
Bonjour les mordus d'EXCEL,

J'ai un fichier dans lequel il y a un formulaire qui sert à l'enregistrement des chèques de mon entreprise. Chaque journée a un formulaire et chaque formulaire est un en dessous de l'autre.

Je voudrais insérer un lien ou icone sur chacun des formulaires afin d'imprimer celui-ci sans avoir à définir une zone de sélection. Je voudrais que la zone se défine d'elle même en lui disant : tu imprimes à partir de cette ligne + 40 lignes de la colonne A à L.

Je joins le fichier en question et MERCI d'avance
 

Pièces jointes

Re : Impression d'une plage de données en cliquant sur un lien

Bonjour Celine1973,

Pour le problème de la formule en M18, il s'agit d'une erreur d'arrondi d'Excel. Tu peux contourner le problème comme ça :
Code:
=SI(E14="";"";IF(ARRONDI(SOMME(H14:H17)-E14;4)=0;"J";"L"))
Pour l'impression, regarde le fichier joint.

A+
 

Pièces jointes

Re : Impression d'une plage de données en cliquant sur un lien

Merci mromain ... j'aurais dû y penser pour l'arrondissement mais je trouve ça quand même bizare qu'il me donnait un message d'erreur.

Pour la macro d'impression ... tu as fais quoi ??? Excuse-moi mais je ne vois pas rien (ou j'ai les 2 yeux bloqués) 🙂
 
Re : Impression d'une plage de données en cliquant sur un lien

Re,

En fait, j'ai créé le lien hypertexte en cellule L43 (qui point vers cette même cellule), et j'ai mis la macro suivante "sur la feuille" (clic droit sur l'onglet, puis visualiser le code).
La macro

  • vérifie si c'est bien le lien hypertexte concerné qui a été appelé
  • calcule la dernière ligne à imprimer (ligne de la dernière cellule contenant des données de la colonne B + 1)
  • redéfini la zone d'impression (A43:L<DernièreLigne>)
  • lance l'impression
VB:
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Dim derLigne As Long
    If Target.Range <> "IMPRESSION DE CETTE PAGE" Then Exit Sub
    With ActiveSheet
        derLigne = .Range("B" & .Rows.Count).End(xlUp).Row + 1
        .PageSetup.PrintArea = "$A$43:$L$" & derLigne
        .PrintOut
    End With
End Sub
A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour