Bug sous VBA en protégeant feuil

  • Initiateur de la discussion Nanard
  • Date de début
N

Nanard

Guest
Bonjour aux exceliens (e), et à tout le forum,

Depuis plusieurs jours , je travaille sur une petite application, dans laquelle j'ai intégré des codes VBA, lorque je protège mon appli malgré après avoir déverouillée les cellules concernées par le code, j'ai une erreur '1004' lorque je protège ma feuil et dans le cas contraire elle fonctionne à merveille

Voici mon code pour + de compré"hension et peut être la solution !!:

Sub Modifier_C5()
'
' Modifier_C_Macro
' Macro enregistrée le 10/02/2004 par BP
'
Dim Nom_Boîte As Variant
Dim Valeur_C5 As Variant
Valeur_C5 = InputBox("Entrez le nom de la Personne ")
Nom_Boîte = Valeur_C5
Range("C5").Select
ActiveCell.Value = Valeur_C5 (Bug 1004 en protégeant feuil)
Selection.Characters.Text = ""
Selection.Characters.Text = CStr(Nom_Boîte)
Range("C5").Select
For Each c In Range("C21")
c.Select
If c.Value = "Société" Then
Selection.Interior.ColorIndex = 36 (Idem pour changem couleur)
ElseIf c.Value = "Nom" Then
Selection.Interior.ColorIndex = 0
End If
Next
End Sub


Je peine sous VBA, si une ame charitable pouvait venir à mon secour

Merci d'avance

Nanard
 
S

STéphane

Guest
bonjour

es-tu sûr de l'avoir déverrouillée cette cellule C5.

j'ai rajouté du code dans ta procédure pour la déverrouiller (pour exemple), et protéger la feuille (puis la déprotéger).


Sub Modifier_C5()
'
' Modifier_C_Macro
' Macro enregistrée le 10/02/2004 par BP
'
Application.ScreenUpdating = False
Dim Nom_Boîte As Variant
Dim Valeur_C5 As Variant
Valeur_C5 = InputBox("Entrez le nom de la Personne ")
Nom_Boîte = Valeur_C5
Range("C5").Select


ActiveCell.Locked = False 'déverrouillage de la cellule, cette cellule sera modifiable même si la feuille est protégée
ActiveSheet.Protect


ActiveCell.Value = Valeur_C5 ' (Bug 1004 en protégeant feuil)
Selection.Characters.Text = ""
Selection.Characters.Text = CStr(Nom_Boîte)
Range("C5").Select
For Each c In Range("C21")
c.Select
If c.Value = "Société" Then
Selection.Interior.ColorIndex = 36 '(Idem pour changem couleur)
ElseIf c.Value = "Nom" Then
Selection.Interior.ColorIndex = 0
End If
Next

ActiveSheet.Unprotect
End Sub
 
N

Nanard

Guest
Bonjour stéphane,

merci de te pencher sur mon problème, ma cellule C5 est effectivement déverouillée ainsi que la cellule dont la couleur est modifiée

j'ai de nouveau un bug à :
ActiveCell.Locked = False
et
Selection.Interior.ColorIndex = 36

en tout cas merfci pour ton aide
Nanard
 
@

@+Thierry

Guest
Bonsoir Nanard, STéphane, le Forum

STéphane le Protect / UnProtect, tu nous l'as pas fait à l'envers ?

Enfin moi si j'ai bien compris on peut simplifier tout ceci comme ça :

Option Explicit

Sub Modifier_C5()
Dim Nom_Boîte As String
Dim Cell_Cible As Range

Set Cell_Cible = Range("C5")

Application.ScreenUpdating = False
ActiveSheet.Unprotect

Nom_Boîte = InputBox("Entrez le nom de la Personne ")

Cell_Cible = Nom_Boîte

If Range("C21") = "Société" Then
Cell_Cible.Interior.ColorIndex = 36
ElseIf Range("C21") = "Nom" Then
Cell_Cible.Interior.ColorIndex = 0
End If

ActiveSheet.Protect
End Sub

Bon Courage Nanard, le VBA c'est pas tabout on y viendra bien à bout !! lol
@+Thierry
 
N

Nanard

Guest
Bonjour thierry,

merci pour ton aide, la cellule C5 change de couleur, ce n'est pas ce que je veux, seule la cellule C21 doit changer de couleur... lol

Bon j'essai de comprendre ce qui modifie ma cell C5, c'est pas gagné, à moins que un pt'i coup de pouce !!!

en tout cas merci pour ton aide

Nanard
 
S

salim

Guest
Bonjour Nanard, @+Thierry , Stephane et le Forum

Nanard c'est normal que ce soit ta cellule c5 qui change de couleur puisque dans cette ligne Set Cell_Cible = Range("C5") tu affecte la variable Cell_Cible à la cellule "c5" et que dans ces lignes tu dis

If Range("C21") = "Société" Then Si cellule 21 = société Alors

Cell_Cible.Interior.ColorIndex = 36 Cell_cible donc "C5" doit etre de couleur 36

ElseIf Range("C21") = "Nom" Then Idem ici

Cell_Cible.Interior.ColorIndex = 0 et pareil ici

End If


@+ Salim
 

Discussions similaires

N
Réponses
10
Affichages
1 K
N

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz