Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 Cellule verrouillée et feuille protégée

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

sersib

XLDnaute Junior
Bonjour,
J'ai une cellule verrouillée qui se renseigne par le biais d'un bouton avec une macro.
Quand je protège la feuille, la cellule ne se renseigne plus 😕
Y'a t'il une solution ou astuce ?
Merci beaucoup.
 
Solution
Re
NB : Pour insérer du code, c'est mieux d'utiliser la balise adéquate (</> ci-dessus)
Comme ça :
VB:
Private Sub CommandButton2_Click()

Dim nf As String

deb = "FC" & Right(Year(Now), 2)...
Bonjour,
J'ai une cellule verrouillée qui se renseigne par le biais d'un bouton avec une macro.
Quand je protège la feuille, la cellule ne se renseigne plus 😕
Y'a t'il une solution ou astuce ?
Merci beaucoup.
Bonjour,
La macro activée par le bouton doit :
  1. Déprotéger la feuille (MaFeuille.Unprotect motdepasse)
  2. Renseigner la cellule cible
  3. Reprotéger la feuille (MaFeuille.Protect motdepasse)
Cordialement,
 
Bonjour,
La macro activée par le bouton doit :
  1. Déprotéger la feuille (MaFeuille.Unprotect motdepasse)
  2. Renseigner la cellule cible
  3. Reprotéger la feuille (MaFeuille.Protect motdepasse)
Cordialement,
Merci @Gégé-45550 , je comprends mais je vois pas trop où et comment ?
La macro:

Private Sub CommandButton2_Click()
Dim nf As String
deb = "FC" & Right(Year(Now), 2) & Right(Month(Now) + 100, 2) & "-"
On Error Resume Next
canal = FreeFile
Open chemin & "C:\Test\num.txt" For Input As #canal
Input #canal, nf
Close #canal
If Left(nf, 7) = deb Then
nf = deb & Format(Val(Right(nf, 2) + 1), "00")
Else
nf = CStr(deb & "01")
End If
Open chemin & "C:\Test\num.txt" For Output As #canal
Print #canal, nf
Close #canal
Sheets("Test").[E4] = nf
End Sub
 
Re
NB : Pour insérer du code, c'est mieux d'utiliser la balise adéquate (</> ci-dessus)
Comme ça :
VB:
Private Sub CommandButton2_Click()

Dim nf As String

deb = "FC" & Right(Year(Now), 2) & Right(Month(Now) + 100, 2) & "-"

On Error Resume Next

canal = FreeFile

Open chemin & "C:\Test\num.txt" For Input As #canal

Input #canal, nf

Close #canal

If Left(nf, 7) = deb Then

nf = deb & Format(Val(Right(nf, 2) + 1), "00")

Else

nf = CStr(deb & "01")

End If

Open chemin & "C:\Test\num.txt" For Output As #canal

Print #canal, nf

Close #canal
Sheets("Test").Unprotect motdepasse ' <= c'est ici que ça se passe ; remplacer motdepasse par le vrai password
Sheets("Test").[E4] = nf
Sheets("Test").Protect motdepasse 'c'est ici que ça finit
End Sub
Cordialement,
 
- 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
2
Affichages
155
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…