Bouton a bascule et verrouillage de cellule

Bonjour a tous , je suis tte nouvelle sur le forum et un peu perdue pr etre franche

jai un gros soucis avec le bouton a bascule . je debute et VBA se qui n'arrange pas forcement les choses...

J'aimerais faire un bouton qui me verrouille/deverouille plusieurs cellules en fonction de la position du bouton.

Les cellules que je souhaite verrouillé sont juste mis en noir (car je ne sais pas verouiller aussi , je suis nulle je sais )

je suis desolée pour les expliquations floues mais j'aimerais de l'aide au plus vite

Merci , je serais vraiment reconnaissante

je vous joint un fichier excel .

69bouton.xls (19.00 Ko)

Bonjour. Bienvenue sur le Forum

Les cellules que je souhaite verrouillé sont juste mis en noir

Je ne vois aucune cellule noire dans ton fichier. Où sont-elles? (Ok, vu le Code)

Cordialement

Bonjour

Peut-être

Private Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then
Range("K17,K19,U18").Interior.ColorIndex = 1
Range("K17,K19,U18").Locked = True
Else
Range("K10,K13,U16").Interior.ColorIndex = 2

If ToggleButton1.Value = False Then
Range("K17,K19,U18").Interior.ColorIndex = 2
Range("K17,K19,U18").Locked = False
Else
Range("K10,K13,U16").Interior.ColorIndex = 1
End If
End If
End Sub

Si besoin, tu rajouteras la ligne Locked pour les autres cellules

Cordialement

oupsss je me suis trompé de fichier, je suis bete désolé .

Je vous explique .

Tous se passe dans la derniere feuille "budget link"

je calcul 2 Grandeurs physiques : la marge ou la distance

jai voulu faire une interface simple , en creant un bouton a bascule pour permettre de verouiller les case qui ne servent pas a calculer une des 2 grandeurs ( jespere que vous m'avez suivi ) . Ma macros n'est pas au point ... j'aimerais pouvoir verrouiller dans certains cas des cellules

j'espere avoir été claire

Merci


voila le fichier , decidement je suis tete en l'air :s

48bouton.zip (16.06 Ko)

Bonjour,

Amadéus, les copier-coller avec la faute de frappe c'est mal

=> .locked pas .loched

Sinon je ne suis pas sûr que seulement mettre locked à true ou false suffise, ne faut-il pas protéger / déprotéger la feuille pour que le blocage soit pris en compte ?

Cordialement,

Edit Amadéus: Bonjour Zirak. Merci de ta remarques. En fait, l'erreur était dans l'écriture et je l'avais bien rectifiée sur le code pour tester. Autant pour moi! j'aurais du envoyer le fichier test. C'est corrigé

Merki !! en effet le programme marche mieux ^^ ,

mais il ne me noicit pas les case K10 ,K13, et U16 lorsque le bouton est enfoncé

ps: les cases ne sont pas verrouillée , je ne comprend sa ne marche pas sniff

29bouton.zip (15.87 Ko)

Bonjour,

Si j'ai bien compris la demande, voir le fichier joint.

Cordialement,

78bouton.zip (19.02 Ko)

sa marche c parfait , merci beaucoup hihi

j'aimerais régler un détail , ma maccros concernant la couleur de la case U16 , enfait je voudrais a ne pas avoir a appuyer sur le bouton pour que la case se mettre soit rouge soit verte , c'est a dire supprimer le bouton et rendre automatique ce procedé de coloriage de cellule a louverture du fichier :s

dsl pr les explication bateau

55bouton1.zip (18.71 Ko)

Bonjour,

merci pour le doublon : https://forum.excel-pratique.com/excel/coloriage-de-cellules-en-fct-de-l-etat-du-bouton-a-basule-t35042.html

C'est toujours un plaisir de bosser pour rien...

eric

Bonjour Eric ,

sans vouloir vous offenser vous ne bosser pas pour rien , au contraire , jai pu considerablement avancé dans mes travaux . j'ai juste récuperer le dossier d'un coéquipier ou nous travaillons en equipe. Nous travaillons sur le meme sujet . Deplus je trouve les membre de se forum tres actif et je vous en remercie grandement .

Maintenant voila je suis de nouveau bloquée, et mes compétences me permettent pas d'avancée une nouvelle fois , comme je vous l'ai ecrit dans le precedent message. (excusez moi detre super nulle...)

Cordialement

Alors déjà, de toutes façons le code de ton bouton n'est pas bon, enfin y'en a trop pour rien:

Private Sub CommandButton1_Click()
Range("U16").Select
For Each Cell In Selection
If Cell.Value > "0" Then
Cell.Interior.ColorIndex = 3
End If
If Cell.Value > "0" Then
Cell.Interior.ColorIndex = 4
End If
Next
End Sub

Tu utilises une boucle For Each.... Next alors que tu n'as qu'une seule cellule de selectionnée, cela ne sert à rien de faire une boucle.

De plus, que cela soit pour le vert ou le rouge, tu lui dis de colorer si la valeur est supérieur à 0, tu as du te tromper et inverser avec un < sur un des deux.

Ensuite si tu veux te passer du bouton, il faut soit que tu utilises les mises en forme conditionnelles mais du coup la case ne sera plus noircie par ton autre macro, soit incorporer ton test de valeur dans ton autre macro.

un essais ci-joint.

Edit: par contre, si vous êtes 2 à bosser sur le même projet, mettez vous au point quand même, cela ne sert à rien d'ouvrir un sujet chacun pour la même question, tout le monde n'a pas le temps de regarder tous les sujets, et du coup, en fait si, vous faites travailler 2 personnes sur la même chose, alors que la 2ème pourrait aider quelqu'un d'autre

44bouton1.zip (18.13 Ko)

je suis désolé alors pour le dérangement, ce n'etait pas ma volonté , on tachera de mieux s'organiser avec la personne concerné.

Et en ce qui concerne ma macros , maintenant que tu mle dis ("jespere que jpeux te tutoyer ") , jai oublier de changer le signe pour valeur négative = rouge .

Euhh ton programme marche parfaitement jte remercie , mais je comprend pas ta démarche , est ce que tu pourrait explicité chaque ligne de ta maccros " worksheet calcul" car j'aimerais comprendre pour réutiliser voir expliquer a qqlqun (c pas encore gagné ) la démarche

Merci

Cordialement

Alors, je pense que tu parles de cette partie là :

If Not IsError(Range("U16")) Then
        If Range("U16").Value < 0 Then
            Range("U16").Interior.ColorIndex = 3
        ElseIf Range("U16").Value > 0 Then
            Range("U16").Interior.ColorIndex = 4
        End If    
Else
        Range("U16").Interior.ColorIndex = 2
End If

En fait au départ, j'étais juste partie sur le fait de mettre en rouge si c'était négatif, et en vert si c'était positif (la partie surlignée), sauf que je me suis aperçu que lorsque tes premières cellules de calculs avec les logarithmes n'étaient pas remplies, la cellule U16 affichait une erreur (ce qui faisait afficher un message d'erreur vba au moment de changer la couleur).

J'ai donc ajouté un test pour dire :

Si la valeur de la cellule n'affiche pas d'erreur alors
   Si elle est négative alors 
       je la passe en rouge
   Sinon
       je la passe en vert  
Sinon si il y a une erreur
    Je la repasse en blanc

Donc ça c'était dans le code de ton bouton à bascule, mais ensuite, je me suis rendu compte que une fois ton bouton enclenché, si tes valeurs venaient à changer, la cellule ne changeait pas de couleur elle, vu que la coloration se fait par action sur le bouton.

Ne sachant si ce cas de figure pouvait se présenter (changement des valeurs entre 2 actions sur le bouton), j'ai donc rajouter le même traitement que sur le bouton, mais dans un évènement Worksheet_Calculate().

En gros, un évènement Worksheet_Calculate(), c'est un bout de macro, qui se déclenche à chaque fois que sur cette feuille précisément, Excel recalcul des valeurs. Tu peux donc trouver des Worksheet_Calculate() sur les pages de codes de tous tes onglets (avec des traitements différents), mais tu n'en trouveras jamais dans des modules (qui eux sont à l'inverse, utilisé pour stock des macros que tu peux appeller de toutes tes feuilles).

J'espère avoir été assez clair, sinon n'hésites pas à demander. (Et non le tutoiement ne me dérange pas).

Cordialement,

Bonjour a toi , Bonne Année , meilleur voeux pour cette année 2013

J'ai un petit soucis avec mon fichier excel :s decidement l'année commence mal

Jmexplique, quand le bouton en haut a gauche est enfoncé , ("DISTANCE") , et que je remplies la cellules U18 et que je valide , la cellule en noire qui située au dessus ,( la U16 pour etre claire) se remet curieusement en blanche :s

C'est un petit défaut que j'aimerais corriger (oui je suis perfectionniste ... mais nulle en vba , decidement rien ne va)

Je compte vraiment sur vous pr me sauver plz

Cordialement

25bouton1.zip (17.54 Ko)
Rechercher des sujets similaires à "bouton bascule verrouillage"