VBA message erreur 1404

  • Initiateur de la discussion Initiateur de la discussion ripou
  • 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 !

ripou

XLDnaute Nouveau
Bonjour à tous,

J'ai un problème sur VBA avec excel 2003.
Dans mon fichier, j'ai une trentaine de feuilles qui sont chacune redimensionnées avec les lignes suivantes :


Private Sub Worksheet_Activate()
Range("A1:R1" ).Select
ActiveWindow.Zoom = True
Range("a1" ).Select
ActiveWindow.DisplayVerticalScrollBar = True

Range("B24:I33,L24😛34,B65:F68,L64😛71,B107:M117,B164:M170,B211:Q216,B227:M232,B287:I294,B335:J337,B380:L386" ).Select
With Selection.Font
.Name = "Arial"
.Size = 16

End With
With Selection
.HorizontalAlignment = xlCenter

End With

Range("a1" ).Select

End Sub


Quand je cherche à protéger mon classeur avec la macro qui suit tout va bien si je reste sur ma page d'accueil. En revanche, si je clique sur les macros de navigation d'une feuille à une autre et auxquelles sont rattachées le redimensionnement en police et taille, j'ai le message d'erreur suivant :
"Erreur d'éxecution 1004 : Impossible de définir la propriété Name de la classe font" et le débogage me surligne .Name="Arial" ! Je ne vois pas ce qui coince, help !
Voici la macro de protection :


Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 27/10/2008 par PAPOU
'

rrr = InputBox("donnez le mot de passe svp" )
For Each ss In Application.Sheets


ActiveWindow.DisplayHeadings = False
ss.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:=rrr
ss.EnableSelection = xlNoSelection
' ss.Protect

Next

Sheets("Accueil" ).Select

End Sub
Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 27/10/2008 par GRYSPEERT, Julien
'

'

rrr = InputBox("donnez le mot de passe svp" )

For Each ss In Application.Sheets


ActiveWindow.DisplayHeadings = False
ss.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False, Password:=rrr
ss.EnableSelection = xlNoSelection
' ss.UnProtect

Next

Sheets("Accueil" ).Select

End Sub


Voilà, j'espère avoir été assez clair, merci d'avance et BONNE ANNEE
Ripou
 
Re : VBA message erreur 1404

Bonjour,
Pas sûr d'avoir compris dans la mesure où l'on ne sait pas ce qui déclenche la protection des feuilles
Code:
Private Sub Worksheet_Activate()
[COLOR="Blue"]ActiveSheet.Unprotect[/COLOR]
Range("A1:R1").Select
ActiveWindow.Zoom = True
Range("a1").Select
ActiveWindow.DisplayVerticalScrollBar = True
Range("B24:I33,L24:P34,B65:F68,L64:P71,B107:M117,B164:M170,B211:Q216,B227:M232,B287:I294,B335:J337,B380:L386").Select
With Selection.Font
.Name = "Arial"
.Size = 16
End With
With Selection
.HorizontalAlignment = xlCenter
End With
Range("a1").Select
[COLOR="Blue"]ActiveSheet.Protect[/COLOR]
End Sub
En outre, la procédure pourrait peut-être être intégrée dans le module de ThisWorkbook (Private Sub Workbook_SheetActivate) plutôt que dans la feuille
A+
kjin
 
Re : VBA message erreur 1404

Merci mais le problème c'est que la protection, je la déclenche avec une macro associé à une image en page d'accueil et toutes les feuilles se protègent en même temps et non indépendamment les unes des autres...

Merci
Ripou
 
- 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

Discussions similaires

Réponses
17
Affichages
1 K
  • Question Question
Microsoft 365 CSV en EXCEL
Réponses
1
Affichages
96
Réponses
7
Affichages
163
Réponses
2
Affichages
511
Réponses
5
Affichages
477
Retour