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

L

lego

Guest
Bonjour,

je vous post mon problème. la macro ci-dessous fonction sans problème sauf quand la feuille excel est en protection et ce malgré que la cellule "K24" ne soit pas verroulliée.
Je ne suis pas très doué car j'ai arrangé cette macro trouvée ici à ma sauce. Soyez indulgent...
Que faut-il que je fasse?
Merci pour votre intervention.
Lego

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim n As Byte
Dim Start As Variant
Dim i As Integer
If [K24] = "GPB" Then
Const Texte As String = ""
For i = 1 To 4
Cells(24, 11).Font.ColorIndex = 6
Cells(24, 11).Interior.ColorIndex = 3
For n = 1 To 10
Start = Timer
Do While Timer < Start + 1 / 100
Loop
If n Mod 5 = 0 Then
Cells(24, 11).Interior.ColorIndex = xlNone
Cells(24, 11).Font.ColorIndex = 1
End If
Next n
Next i
End If
Exit Sub
End Sub
 
Re : Cellule clignotante

Bonjour lego,

VBA, comme toi, ne sait pas travailler sur une feuille sur une feuille protégée.

En début de macro, tu mets juste après le Private...... :

ActiveSheet.Unprotect ("ton mot de passe")

et avant le End Sub :

ActiveSheet.Protect ("ton mot de passe")

Bonne journée.

Jean-Pierre
 
Re : Cellule clignotante

Merci jean Pierre pour ta réponse. j'ai appliqué (enfin, je pense ce que tu m'as dit de faire. Voir ci-dessous si pas d'erreur. Cela étant le "mot de passe" est à vide. j'ai essayé avec un mot de passe, c'est pareil)
Donc, je n'ai plus de l'erreur mais je n'ai plus AUSSI la fonction clignotant de la macro.
Peux tu encore m'aider.
Merci


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Unprotect (" ")
Dim n As Byte
Dim Start As Variant
Dim i As Integer
If [K24] = "GBP" Then
Const Texte As String = ""
For i = 1 To 4
Cells(25, 11).Font.ColorIndex = 6
Cells(25, 11).Interior.ColorIndex = 3
For n = 1 To 10
Start = Timer
Do While Timer < Start + 1 / 100
Loop
If n Mod 5 = 0 Then
Cells(25, 11).Interior.ColorIndex = xlNone
Cells(25, 11).Font.ColorIndex = 1
End If
Next n
Next i
End If
Exit Sub
ActiveSheet.Protect (" ")
End Sub
 
Re : Cellule clignotante

Re,

Retire les (" ") qui ne servent plus à rien et reteste.

Je n'ai pas regardé ton code car comme beaucoup ici je ne travaille pas sur du texte mais sur exemple concret (un fichier quoi).

A te lire.

Jean-Pierre
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
830
Réponses
7
Affichages
413
Réponses
2
Affichages
492
Réponses
15
Affichages
621
Retour