XL 2016 Erreur 1004

KTM

XLDnaute Impliqué
Salut chers tous
Ma macro qui à toujours fonctionner me renvoie depuis ce matin une erreur 1004 sur la ligne suivante:

.PageSetup.Zoom = False


Je veux comprendre à quoi serait-elle due ?

Merci.
Capture d’écran .png
Capture d’écran .png
 

soan

XLDnaute Barbatruc
Inactif
Bonjour KTM,

je pense que tu as dû protéger ta feuille !
VB:
Sub Essai()
  '...
  With ActiveSheet
    .Unprotect
    .PageSetup.Zoom = False
    .Protect
  End With
  '...
End Sub
si tu as protégé ta feuille avec un mot de passe, par exemple "loup" :
VB:
Sub Essai()
  '...
  With ActiveSheet
    .Unprotect "loup"
    .PageSetup.Zoom = False
    .Protect "loup"
  End With
  '...
End Sub
soan
 

Phi.L

XLDnaute Nouveau
Bonjour KTM,

je pense que tu as dû protéger ta feuille !
VB:
Sub Essai()
  '...
  With ActiveSheet
    .Unprotect
    .PageSetup.Zoom = False
    .Protect
  End With
  '...
End Sub
si tu as protégé ta feuille avec un mot de passe, par exemple "loup" :
VB:
Sub Essai()
  '...
  With ActiveSheet
    .Unprotect "loup"
    .PageSetup.Zoom = False
    .Protect "loup"
  End With
  '...
End Sub
soan
l'erreur se produit même si la feuille n'est pas protégée
une autre idée ?
 

soan

XLDnaute Barbatruc
Inactif
Bonjour Phi.L,

bienvenue sur le site XLD ! :)

pour tes prochains posts, pense à les commencer par "Bonjour", et à écrire "Merci" après ta demande. ;)

si tu envoies ton fichier sans données confidentielles, j'essayerai de voir si je trouve une solution (c'est sans garantie) ; s'il y a plusieurs feuilles, indique sur laquelle ça se produit ; et aussi : quel est le module VBA concerné, et quelle sub doit être modifiée.​

pour envoyer ton fichier, tu pourras utiliser le bouton « Joindre un fichier » qui est en bas à gauche d'un post en cours d'édition.

soan
 

Phi.L

XLDnaute Nouveau
bonjour,
KTM ne dit pas si son pb est résolu, en fait j'ai la même chose et ma feuille n'est pas protégée
je n'ai jamais eu de souci jusqu'ici :

Sub MeP()
'Mise en Page
Application.PrintCommunication = False
With ActiveSheet.PageSetup
.LeftMargin = Application.InchesToPoints(0.25)
.RightMargin = Application.InchesToPoints(0.25)
.TopMargin = Application.InchesToPoints(0.2)
.BottomMargin = Application.InchesToPoints(0.2)
.HeaderMargin = Application.InchesToPoints(0.1)
.FooterMargin = Application.InchesToPoints(0.1)
.CenterHorizontally = True
.CenterVertically = False
.Orientation = xlPortrait
.PaperSize = xlPaperA4
.Zoom = False
.FitToPagesWide = 0
.FitToPagesTall = 2
.PrintTitleRows = "$1:$2"
.PrintTitleColumns = ""
End With
Application.PrintCommunication = True

End Sub

Si quelqu'un à une idée, merci
Nota en déroulant la macro manuellement ça peut passer

en supprimant la ligne Zoom il me reste cette erreur

1618818796709.png


MERCI
 
Dernière édition:

soan

XLDnaute Barbatruc
Inactif
@Phi.L, BrunoM45,

essaye avec le code VBA ci-dessous ; j'ai fait une indentation du code VBA ; j'ai mis en commentaire tes 2 instructions Application.PrintCommunication car elles n'existent pas sur le VBA de mon Excel 2007 ; regarde cette image, tirée de l'Aide VBA :
Image.jpg

aussi, d'après ce qui est dans le cadre vert, je pense que c'est mieux de mettre l'instruction .Zoom après les 2 instructions .FitToPagesWide et .FitToPagesTall ; de plus, j'ai mis .FitToPagesWide en commentaire car le paramètre 0 n'est peut-être pas correct, ce que semble confirmer le post de BrunoM45 (salut).​

VB:
Sub MeP()
  'Mise en Page
  'Application.PrintCommunication = False
  With ActiveSheet.PageSetup
    .LeftMargin = Application.InchesToPoints(0.25)
    .RightMargin = Application.InchesToPoints(0.25)
    .TopMargin = Application.InchesToPoints(0.2)
    .BottomMargin = Application.InchesToPoints(0.2)
    .HeaderMargin = Application.InchesToPoints(0.1)
    .FooterMargin = Application.InchesToPoints(0.1)
    .CenterHorizontally = True
    .CenterVertically = False
    .Orientation = xlPortrait
    .PaperSize = xlPaperA4
    '.FitToPagesWide = 0
    .FitToPagesTall = 2
    .Zoom = False
    .PrintTitleRows = "$1:$2"
    .PrintTitleColumns = ""
  End With
  'Application.PrintCommunication = True
End Sub

j'espère que ça ne reproduira plus l'erreur avec ce nouveau code. 🍀

(je n'ai rien d'autre à proposer sur ce sujet)

soan
 

Discussions similaires

Réponses
14
Affichages
358

Statistiques des forums

Discussions
315 123
Messages
2 116 458
Membres
112 748
dernier inscrit
Pboiusquet