Erreur d'exécution 1004

Bonjour maître vba

Lorsque je mets une protection sur le fichier, une erreur d'exécution 1004 survient lorsque je tente de remplir les cellules arrivée-départ.

le message indique : Impossible de définir la propriété NumberFormat de la classe Range.

Et quand je retire la protection, la macro fonctionne bien. J'aimerais pouvoir protéger le fichier.

Quelle serait la solution. Merci

Bonsoir,

Avec un : Unprotect en début de code et un Protect en fin de traitement cela suffirait peut-être, non ?

Avec une code plus précis, vous pouvez même définir un mot de passe...

@ bientôt

LouReeD

Bonjour monsieur Reed

merci pour cette piste. C'est grandement apprécié.

Est-ce que ce code fait sens?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    adresse = Target.Address

ActiveSheet.Unprotect
    For i = 11 To 22
        If adresse = "$F$" & i Then
            Calendrier.Show
            Cancel = True
            Exit For
        ElseIf adresse = "$G$" & i Or adresse = "$H$" & i Or adresse = "$I$" & i Or adresse = "$J$" & i Then
            HrsMins.Show
            Cancel = True
            Exit For
        End If
    Next

    If adresse = "$G$6" Or adresse = "$F$30" Then
        Calendrier.Show
        Cancel = True
    End If

ActiveSheet.Protect

End Sub

Bonsoir,

je dirais oui...

Alors ça marche ?

@ bientôt

LouReeD

Oui, ça marche... et merci encore.

Ravis que cela vous plaise...

si vous vouliez y mettre un mot de passe je crois que l'orthographe est la suivante (avec Loureed en mot de passe) :

pour enlever :

ActiveSheet.Unprotect Password:="LouReeD"

pour le mettre :

ActiveSheet.Protect Password:="LouReeD"

Ainsi l'utilisateur ne poura pas "juste" faire Révision / ôter la protection, car Excel lui demandera un mot de passe.

@ bientôt

LouReeD

Rechercher des sujets similaires à "erreur execution 1004"