Beforeprint et Enregistrement sous PDF

Hello tout le monde,

j'ai sur ma feuille, deux cellules que je souhaite cacher lors d'une Impression et / ou lors d'une Sauvegarde Sous PDF.

Mon code avant Impression semble fonctionner mais je coince pour l'enregistrement Sous PDF....

Dim ok As Boolean
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If ok = True Then Exit Sub
ok = True
If ActiveSheet.Name = "BewohnerIn" Then
Cancel = True
Application.EnableEvents = False
Application.ScreenUpdating = False
With ActiveSheet
.Range("A1:B1").Font.ColorIndex = 2

.PrintOut

.Range("A1:B1").Font.ColorIndex = 1

End With
Application.EnableEvents = True
Application.ScreenUpdating = True
End If
End Sub

Des idées ??

Une idée bête, pourquoi ne pas mettre des caractères de la même couleur que le fond des cellules au moment de l'impression ou de la sauvegarde au format PDF ?

C'est bien l'idée de base, mais uniquement lors de l'inpression ou de la Sauvegarde PDF le reste du temps les cellules doivent etre visibles.

J'ai oublier de mentionner que mon soucis viens de

Cancel = True

en Effet quand celui ci est true je peux imprimer mais pas savegarder Sous pdf, quand il est false, je peux sauvegarder Sous Pdf mais j'imprime deux pages

Je pense que le mieux serait de soumettre le fichier en question, cela vous ferait gagner du temps.

Ce ne sont pas les mêmes événements : d'un côté il y a l'impression et de l'autre la sauvegarde. Voici comment je procèderais (je ne suis pas un pro). Comme tu as utilisé Workbook_BeforePrint(Cancel As Boolean), qui marche très bien sur ma machine, tu peux faire la même chose avec Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean). Essaye un truc dans ce goût-là :

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If ok = True Then Exit Sub
ok = True
    If ActiveSheet.Name = "BewohnerIn" Then
      SaveAsUI = False
        Application.EnableEvents = False
        Application.ScreenUpdating = False
        With ActiveSheet
            .Range("A1:B1").Font.ColorIndex = 2            
            .PrintOut          
            .Range("A1:B1").Font.ColorIndex = 1            
        End With
        Application.EnableEvents = True
        Application.ScreenUpdating = True
    End If
End Sub

Ok j'arrive presque a mon but....

Dans le 3 ème ongelt apres la Sauvegarde, si j'y refais un changement en colone "I" et refais une Sauvegarde, l'evenement n'est plus declancher.....

Je m'exprimes peut-être de la mauvaise manière.

Si j'utilise mon code ainsi : Alors quand je fais enregistrer Sous PDF, Excel me dit que le ficher ne peut être sauvegarder par contre l'impression papier fonctionne

Private Sub Workbook_BeforePrint(Cancel As Boolean)
If ActiveSheet.Name = "Stübli- Kurier" Then
Cancel = True --> Car je veux pouvoir faire une Action après l'impression
Application.ScreenUpdating = False
Application.EnableEvents = False
With ActiveSheet
.Range("A3:I44").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With

.PrintOut

End With

Application.EnableEvents = True
Application.ScreenUpdating = True

End If



End Sub

Par contre si j'utilise le code ainsi : Alors quand je fais enregistrer Sous PDF, ça fonctionne, par contre l'impression papier est faite deux fois

Private Sub Workbook_BeforePrint(Cancel As Boolean)
If ActiveSheet.Name = "Stübli- Kurier" Then
Cancel = False
Application.ScreenUpdating = False
Application.EnableEvents = False
With ActiveSheet
.Range("A3:I44").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With

.PrintOut

End With

Application.EnableEvents = True
Application.ScreenUpdating = True

End If

End Sub

Alors je suis un peu perdu, est-ce un soucis de cancel = true ou un soucis de façon de penser. Dans l'idee la page doit être modifiée avant Impression papier ou pdf puis revenir a son état avant Impression ou enregistrement.

Un Grand merci d'avance.

Bon, finalement j'ai opter pour un Combo beforeprint sans l'utilisation de '.Printout' et workbookActive

Rechercher des sujets similaires à "beforeprint enregistrement pdf"