Imprimer automatiquement sans tenir de cellules non vides (avec des formule

Bonjour,

Je me permets de solliciter votre aide.

Je dois faire en sorte d'imprimer ma page Excel en faisant abstraction de certaines cellules non vides (car avec formule) mais invisible car cachée.

Vous me direz "zone d'impression"... le problème est que ces cellules sont dépendant d'un tri et s'active (la donnée apparaît) en fonction des données présentes dans un Tcd juste à côté.

Je souhaite donc garder ces formules, mais que lorsque j'enclenche le bouton impression, seule les données visibles soient prises en charge lors de l'impression.

En clair, je veux éviter les pages blanches inutiles qui sont générée par mes formules invisibles.

Quelqu'un a-t-il une solution automatique sans passer par une macro ?

PS: la plus value du fichier est que les utilisateurs puissent uniquement trier puis presser CTRL + P pour passer à l'impression PDF.

Merci d'avance pour votre aide.

bonjour

où sont les cellules cachées ?

conseil : ne faire qu'un TCD contenant les valeurs et les %, et non 2 séparés

note : en France, le RGPD interdit de diffuser* les données personnelles des gens. Tes TCD contiennent ce type de données, avec les noms réels.

* par exemple sur un forum Excel. Mais il faut aussi protéger ces données contre le piratage.

à te relire

amitiés

Bonjour,

Une proposition VBA à étudier.

La zone d'impression sera définie avant impression en fonction du nombre de lignes de la colonne A (1).

Pour ce faire, ALT F11 pour ouvrir l'éditeur VBE.

Copie cette procédure dans le module ThisWorkbook de ton classeur.

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim LastRow As Long, rngPrint As Range
    If ActiveSheet.Name = "TCD - analyse" Then
        With ActiveSheet
            LastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
            Set rngPrint = .Cells(1).Resize(LastRow, 31)
            .PageSetup.PrintArea = rngPrint.Address
        End With
    End If
End Sub

Bonjour JMD,

Merci pour ta rapide réponse.

J’ai mis en évidence (en jaune) les cellules cachées pour le forum.

Concernant la norme RGDP, je te rassure, les données ne sont pas réelles dans le fichier (Benoit tartempion n’existe pas vraiment...).

Merci d’avance pour ton aide.

Bonjour Jean-Eric,

Ta Macro fonctionne et serait bien évidement l'idéal si je n'avais pas des clients qui ne souhaitent pas voir apparaître le mots "Macro" dans leur fichier, notamment à l'ouverture.

Voici pourquoi je me suis adressé à ce forum, car la tâche de contournement des Macros me paraît compliquée.

Un grand merci pour ton aide toutefois précieuse et efficace.

Bonjour,

Une autre proposition sans VBA :

Dans le gestionnaire de noms, créer le nom d_fin (niveau classeur) :

=EQUIV("zzz";'TCD - analyse'!$A:$A;1)

Ensuite, toujours dans le gestionnaire de noms, modifier la zone d'impression :

='TCD - analyse'!$A$1:INDEX('TCD - analyse'!$A:$A;d_fin;32)

A te relire.

Cdlt.

Re-bonjour Jean-Eric,

Je n'ai malheureusement pas réussi à intégrer ces deux formules par manque de compétences Excel

Dans le gestionnaire de noms :

  • Dois-je créer une nouvelle zone d'impression et supprimer les autres zones ?
  • Dois-je entrer une formule dans la zone

Une toute autre piste qui me paraît plus propre :

Existe-t-il un moyen dans un TCD pour faire aparaître une colonne avec les sommes par ligne de deux ou trois autres colonnes du même TCD? Autrement dit, il faudrait pouvoir faire une sélection des colonnes à sommer pour obtenir le même résultat que dans mon TCD, sans passer par des formules externes (comme c'est le cas actuellement dans mon TCD).

Aurais-tu une idée ?

Bonne journée et un grand merci d'avance.

Re,

Tu ouvres le gestionnaire de noms.

Nouveau,

Nom : d_fin

Zone : classeur

Fait référence à :

=EQUIV("zzz";'TCD - analyse'!$A:$A;1)

Ensuite, tu sélectionnes le nom Zone_d_impression et tu modifies la formule.

Remplace

='TCD - analyse'!$A:$AE

par

='TCD - analyse'!$A$1:INDEX('TCD - analyse'!$A:$A;d_fin;32)

Cdlt.

Bonsoir Jean-Eric,

Je ne suis vraiment pas un as, j'ai pas réussi à faire fonctionner ta dernière solution bien qu'ayant suivi tes étapes à la lettre, capture d'écran à l'appui.

Encore un grand merci pour ton aide.

Bonne soirée

capture d ecran 2019 03 12 a 20 10 07 capture d ecran 2019 03 12 a 20 09 59

Re,

Ton fichier a été envoyé à l'adresse indiquée.

A te relire.

Cdlt?

Salut Jean-Eric,

Grâce à toi j'ai finalement trouvé une solution que je souhaitais partagé ici :

=DECALER('TCD - analyse'!$A$1:$AE$1;;;EQUIV("zz*";'TCD - analyse'!$A:$A;1))

Un grand merci de m'avoir mis sur cette piste dont je ne connaissait pas l'existence.

Très bon dimanche à tous et merci !

Rechercher des sujets similaires à "imprimer automatiquement tenir vides formule"