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 !

SEBELEC16

XLDnaute Nouveau
Bonjour à tous,

J'ai un petit souci, voici la macro qui est dans dans mon classeur :
Option Explicit
Private Sub Workbook_Open()
ActiveSheet.Unprotect ("123")

If Left(ActiveWorkbook.Name, 4) = "BTFI" Then Exit Sub
Range("W4") = Range("W4") + 1
ActiveWorkbook.Save
Range("NOM").ClearContents
Range("demande").ClearContents
Range("D16").ClearContents
Range("a47:a58").ClearContents
Range("I47:I58").ClearContents
Range("d61:d67").ClearContents
Range("date").MergeArea.ClearContents
Range("D11").MergeArea.ClearContents
Range("C12").MergeArea.ClearContents
Range("C13").MergeArea.ClearContents
Range("C14").MergeArea.ClearContents
Range("C15").MergeArea.ClearContents
Range("C32").MergeArea.ClearContents
Range("C33").MergeArea.ClearContents
Range("C34").MergeArea.ClearContents
Range("C35").MergeArea.ClearContents
Range("C36").MergeArea.ClearContents
Range("C37").MergeArea.ClearContents
Range("C38").MergeArea.ClearContents
Range("C39").MergeArea.ClearContents
Range("C40").MergeArea.ClearContents
Range("c41").MergeArea.ClearContents
Range("C42").MergeArea.ClearContents
Range("C43").MergeArea.ClearContents
Range("C44").MergeArea.ClearContents
Range("b47").MergeArea.ClearContents
Range("b48").MergeArea.ClearContents
Range("b49").MergeArea.ClearContents
Range("b50").MergeArea.ClearContents
Range("b51").MergeArea.ClearContents
Range("b52").MergeArea.ClearContents
Range("b53").MergeArea.ClearContents
Range("b54").MergeArea.ClearContents
Range("b55").MergeArea.ClearContents
Range("b56").MergeArea.ClearContents
Range("b57").MergeArea.ClearContents
Range("b58").MergeArea.ClearContents
Range("A61").MergeArea.ClearContents
Range("A67").MergeArea.ClearContents
ActiveSheet.Protect ("123")


End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)


Dim Chemin As String, Numéro_Facture As Integer, Nom_tech As String, Nom_année As String, Nom_PC As String

Chemin = ActiveWorkbook.Path
Numéro_Facture = Range("W4")
Nom_tech = Range("X4").Value
Nom_année = Range("y5").Value
Nom_PC = Range("Z5").Value
Application.DisplayAlerts = False

ActiveWorkbook.SaveAs Filename:= _
Chemin & "\BTFI " & Nom_PC & "-" & Nom_année & "-" & Nom_tech & "-" & Numéro_Facture & ".xls", FileFormat:=xlWorkbookNormal, CreateBackup:=False

End Sub

Cette macro fonctionne sans soucis. Le problème : Je viens de créer un bouton imprimer qui me permet d'imprimer la feuille nommée BTFI et une feuille cachée nommé BTFI COPIE, voici la macro affectée au bouton :

Sub Macro4()
Sheets("BTFI COPIE").Visible = xlSheetVisible
Sheets(Array("BTFI", "BTFI COPIE")).Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("BTFI COPIE").Visible = xlSheetHidden
End Sub

Quand je clique sur le bouton la macro fonctionne également, mais quand j'ouvre mon classeur une erreur débogage 1004 sur ActiveSheet.Protect ("123") apparait, depuis que j'ai ecris la macro4 mon fichier ne veut apparemment plus se reprotéger.

Merci de votre aide.

sebelec.
 
Re : Probleme macro

Re camarchepas,

J'ai posté un peu vite car en fait je pense que c'était mon classeur qui avait un bug car là je viens de réessayer et ça marche bien, plus aucun msg d'erreur.

merci quand même d'avoir répondu aussi rapidement.

A+
sebelec.
 
- 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
4
Affichages
177
Réponses
10
Affichages
547
  • Question Question
Microsoft 365 Code VBA
Réponses
10
Affichages
860
Retour