Macro Checkbox avec Excel 97

Astrobal

XLDnaute Nouveau
Bonjour,

J'ai une macro sur une Case à cocher qui m'affiche ou pas une couleur ds une plage de Cellules. Cette Macro fonctionne très bien avec Excel 2003, mais pas sur Excel 97.

Voici la macro :

Private Sub CheckBox1_Click()
If CheckBox1 Then
Range("J4:J15,H4:H15").Interior.ColorIndex = 4
Else
Range("J4:J15,H4:H15").Interior.ColorIndex = xlNone
End If
End Sub

J'ai une erreur d'exécution 1004 "Impossible de définir la propriété de la classe Interior"

Je suis très novice en macro et je ne sais pas quoi modifier.
Merci de vos lumières.
 

porcinet82

XLDnaute Barbatruc
Re : Macro Checkbox avec Excel 97

Salut Astrobal,

Je n'ai pas Excel 97, donc difficile de comprendre le pourquoi de cette erreur, car je pense que la propriété Interior existait deja en 97. Cependant, en bidouillant un peu on devrait y arriver. Je vais te demander de faire un petit truc.
Tu va dans Outils/Macro/Nouvelle macro, tu valides le nom de la macro puis dans ta feuille excel, tu appliques une couleur de fond a une plage de cellule (comme ce que fais ta macro normalement), ensuite tu click que le petit bouton pause et tu va chercher le code qu'excel a enregistré et tu le post ici. A partir de la, on devrait etre en mesure de t'aider.

@+
 

lacorse33

XLDnaute Occasionnel
Re : Macro Checkbox avec Excel 97

Bonjour Astrobal, Porcinet82 et le forum,

C'est pareil que Porcinet82, je n'ai pas Excel 97 donc ce n'est pas évident.
En fouinant sur le Net, j'ai trouvé ceci.
Il faut déprotéger, puis protéger à nouveau ta feuille pour pouvoir avoir accès à 'Interior'

Peux-tu essayer le code qui suit ?

Private Sub CheckBox1_Click()
Worksheets(NomOnglet).Unprotect
If CheckBox1 Then
Range("J4:J15,H4:H15").Interior.ColorIndex = 4
Else
Range("J4:J15,H4:H15").Interior.ColorIndex = xlNone
End If
Worksheets(NomOnglet).Protect End Sub

Il faut remplacer "NomOnglet" par le nom de ton onglet.

Merci
A+
Béa
 

Astrobal

XLDnaute Nouveau
Re : Macro Checkbox avec Excel 97

Bon j'ai avancé (on m'a aidé un peu), quand je met ça :

Private Sub CheckBox1_Click()
Range("A1").Select
If CheckBox1 Then
Range("J4:J15,H4:H15").Interior.ColorIndex = 4
Else
Range("J4:J15,H4:H15").Interior.ColorIndex = xlNone
End If
End Sub

Ca fonctionne, par contre si je protège la feuille j'ai encore une erreur même avec la solution de Bea.
Private Sub CheckBox1_Click()
Range("A1").Select
Worksheets("Feuil1").Unprotect
If CheckBox1 Then
Range("A1").Select
Range("J4:J15,H4:H15").Interior.ColorIndex = 4
Else
Range("J4:J15,H4:H15").Interior.ColorIndex = xlNone
End If
Worksheets("Feuil1").Protect End Sub

Dans l'immédiat je ne protège pas la feuille

--Alain
 

Astrobal

XLDnaute Nouveau
Re : Macro Checkbox avec Excel 97

Bonsoir,
Voici mon fichier. Pardon Bea en fait je crois que cela fonctionne, mais il ne faut pas mettre de mot de passe. C'est ce que j'avais fait et les destinataires n'auront pas les mots de passe, je n'autorise la modif des cellules que sur quelques colonnes.
Ca fonctionne sur Excel 2003, mais encore à tester sur 97 et aujourd'hui je n'ais pas eu le temps.
A+
Merci de me consacrer un peu de temps.
 

Pièces jointes

  • Essai_Checbox_Astrobal.zip
    25.3 KB · Affichages: 60

Discussions similaires

Statistiques des forums

Discussions
312 769
Messages
2 091 936
Membres
105 114
dernier inscrit
ldreyer