Cacher le texte d'une cellule pour l'impression

rere67

XLDnaute Junior
Bonjour à vous,

Je suis entrain de chercher comment je peux cacher du texte se trouvant dans une cellule pour l'impression.

L'objectif est clair que je puisse voir ce aui se trouve dans cette cellule avant et après l'impression.

J'ai tenté avec cette macro mais je tourne en rond.

Private Sub Workbook_BeforePrint(Cancel As Boolean)

Range("B8").Select
With Selection.Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With

With Selection.Font
.ColorIndex = xlAutomatic
.TintAndShade = 0
End With

End Sub


Est ce que quelqu'un à une solution ?

Merci
 

Pièces jointes

  • Exemple.xls
    446.5 KB · Affichages: 99
  • Exemple.xls
    446.5 KB · Affichages: 105
  • Exemple.xls
    446.5 KB · Affichages: 110

tototiti2008

XLDnaute Barbatruc
Re : Cacher le texte d'une cellule pour l'impression

Bonjour rere67,

Peut-être définir une zone d'impression qui s'arrête en F6 ?
ou mettre ton texte dans un objet dessiné (forme automatique), dans la propriété de l'objet tu as une possibilité d'imprimer ou non l'objet
ou alors mettre ton message en commentaire, les commentaires ne sont pas imprimés par défaut
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Cacher le texte d'une cellule pour l'impression

Bonjour à tous,

avec ce code:
Code:
Sub Imprimer()
' mettre les caractères en blanc avant l'impression
    Range("B8").Select
    With Selection.Font
        .ThemeColor = xlThemeColorDark1
        .TintAndShade = 0
    End With
    
 ' impression
   ActiveSheet.PrintOut
   
' rétablir l'affichage sur la feuille
    Range("B8").Select
    With Selection.Font
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
    End With

End Sub
le code était presque bon, il manquait uniquement la ligne d'impression entre les deux changements de couleur

à+
Philippe

Edit:
c'est le fait d'avoir mis dans Before_Print qui joue des tours
 
Dernière édition:

rere67

XLDnaute Junior
Re : Cacher le texte d'une cellule pour l'impression

Merci pour vos réponses.

Je ne peut pas définir la zone d'impression car je veux mettre des choses en-dessous.

Concernant la macro, j'avais réussit à l'avoir mais pour qu'elle se lance je doit la lier à une action genre bouton. Mais j'aimerai que cela soit automatique dès le démarrage du fichier.
 

rere67

XLDnaute Junior
Re : Cacher le texte d'une cellule pour l'impression

Bonjour,

En retravaillant sur le document je me suis demandé s'il n'était pas possible de fonctionné par étape dans la macro.

J'arrive à faire que le texte devienne blanc avant l'impression mais après l'impression il est toujours blanc.

Est ce que quelqu'unà une solution ??

Voici la macro qui j'ai inséré dans le Workbook

Private Sub Workbook_BeforePrint(Cancel As Boolean)
' mettre les caractères en blanc avant l'impression
Range("B11").Select
With Selection.Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With

' rétablir l'affichage sur la feuille
Range("B11").Select
With Selection.Font
.ColorIndex = xlAutomatic
.TintAndShade = 0
End With
End Sub
 

tototiti2008

XLDnaute Barbatruc
Re : Cacher le texte d'une cellule pour l'impression

Salut Philippe :),
Re,

S'il y a un évènement BeforePrint, il n'y a pas d'évènement AfterPrint, or c'est ce qu'il te faudrait pour remettre le texte lisible
Donc chercher dans d'autres évènements qui pourraient être déclenchés après l'impression, quitte à les déclencher par VBA...

Mais je trouve tout ça assez tordu, les solutions Objet dessiné et commentaires ne te vont vraiment pas ?
 

tototiti2008

XLDnaute Barbatruc
Re : Cacher le texte d'une cellule pour l'impression

Re,

Je trouve que de passer par des macros rend le document plus propre c'est tout

C'est amusant comment ça peut être différent en fonction des utilisateurs d'Excel
Il y a ceux qui disent "mais surtout pas de macro" comme si c'était forcément un virus qu'on met dans le classeur, et il y a ceux qui disent "seulement par macro" comme si les autres fonctionnalités d'Excel, les outils existants, les formules étaient forcément mauvais
La vérité doit surement se trouver entre ces deux visions ;)
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Cacher le texte d'une cellule pour l'impression

Re,
Merci pour vos réponses.

Je ne peut pas définir la zone d'impression car je veux mettre des choses en-dessous.

Concernant la macro, j'avais réussit à l'avoir mais pour qu'elle se lance je doit la lier à une action genre bouton. Je trouve que de passer par des macros rend le document plus propre c'est tout. Mais je pense que je vais passer par une forme.
pour cela l'évènementielle WorkBook_Open fera l'affaire, sans bouton
Je trouve que de passer par des macros rend le document plus propre c'est tout. Mais je pense que je vais passer par une forme.
au premier post tu nous montre une procédure ( macro) qui ne fonctionne pas
au post #3 je te donne une procédure ( macro ) qui fonctionne
Mais j'aimerai que cela soit automatique dès le démarrage du fichier.
dans ce cas il n'y a pas d'autre alternative que l'utilisation d'une macro évènementielle WorkBook_Open

à+
Philippe
 

laurent950

XLDnaute Accro
Re : Cacher le texte d'une cellule pour l'impression

Bonsoir le Forum,

Peut être come cela en deux temps

VB:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
 Cancel = True
 Application.EnableEvents = False
 ' mettre les caractères en blanc avant l'impression
 Range("B11").Select
 With Selection.Font
 .ThemeColor = xlThemeColorDark1
 .TintAndShade = 0
 Sheets("Accueil").PrintOut
 Application.EnableEvents = True
 'ton code après impression pour rétablir
 ' rétablir l'affichage sur la feuille
 Range("B11").Select
 With Selection.Font
 .ColorIndex = xlAutomatic
 .TintAndShade = 0
 End With
 
 End Sub
VBA


laurent950
 
Dernière édition:

eriiic

XLDnaute Barbatruc
Re : Cacher le texte d'une cellule pour l'impression

Bonsoir tout le monde,

Proposition hors vba :
Mettre une MFC 'police blanche' qui teste un checkbox non imprimable.
('police blanche' également pour la cellule liée)

Bon, ça fait 2 clics au lieu d'un, mais simple à mettre en oeuvre...

eric
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Cacher le texte d'une cellule pour l'impression

Re bonjour à tous
Bonsoir le Forum,

Peut être come cela en deux temps

VB:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
 Cancel = True
 Application.EnableEvents = False
 ' mettre les caractères en blanc avant l'impression
 Range("B11").Select
 With Selection.Font
 .ThemeColor = xlThemeColorDark1
 .TintAndShade = 0
 Sheets("Accueil").PrintOut
 Application.EnableEvents = True
 'ton code après impression pour rétablir
 ' rétablir l'affichage sur la feuille
 Range("B11").Select
 With Selection.Font
 .ColorIndex = xlAutomatic
 .TintAndShade = 0
 End With
 
 End Sub
VBA


laurent950
@ Laurent;

il manque End With avant la ligne d'impression Sheets("Accueil").PrintOut

à+

Philippe
 

laurent950

XLDnaute Accro
Re : Cacher le texte d'une cellule pour l'impression

Bonsoir Philippe,

Je te remercie il était tard est j'avais pas tester le code directement, j'espères un retour de celui qui a poster se post pour savoir si cela répond a sa demande

à bientôt

laurent
 

Discussions similaires

Réponses
5
Affichages
490

Statistiques des forums

Discussions
312 247
Messages
2 086 591
Membres
103 248
dernier inscrit
Happycat