Signaler

Renommer un bouton en cliquant dessus (VBA) [Résolu]

Posez votre question Carpologue 170Messages postés dimanche 8 janvier 2012Date d'inscription 12 octobre 2016 Dernière intervention - Dernière réponse le 12 oct. 2016 à 15:34
Bonjour,

J'essaie de créer une feuille complète en VBA pour un jeu de rôle, étant tout nouveau dans ce langage je suis bloqué très rapidement.

Voilà mon objectif :

J'aimerais créer un bouton qui puisse être renommer en cliquant dessus. Par exemple la valeur de base de ce bouton est "100" j'aimerais qu'une InputBox s'affiche lorsque l'on clique dessus et que l'utilisateur puisse mettre la valeur qu'il souhaite.

En clair : Bouton "100"=>Clique=>InputBox("Rentrer la nouvelle valeur")=>Utilisateur rentre "50"=>Bouton "50"

Si vous avez un code pour ça je prends. J'imagine que ça se fait via les boutons de commande et non pas de formulaire, donc des explications compréhensibles par des novices comme moi sont les bienvenues :D

Merci à vous,
Carpologue.

PS: Je travaille sous Microsoft Excel 2007.
PS&: En plus j'aimerais que ce ne soit pas qu'un caption du bouton mais aussi une valeur. Car à terme je voudrais que si la valeur descend en dessous d'un minima le bouton change de couleur. (J'en demande trop ? :') )
Afficher la suite 
Utile
+1
moins plus
Bonjour,

Voici un exemple avec un bouton activeX:

Private Sub CommandButton1_Click()
Dim val As String
val = InputBox("Entrez un chiffre", "Mon bouton", "10")
CommandButton1.Caption = val
If CommandButton1.Caption <= 50 Then
CommandButton1.BackColor = &HFF&
Else
CommandButton1.BackColor = &H8000&
End If
End Sub


Pour avoir les codes couleurs allez dans les propriétés du bouton dans BackColor

m@rina 13107Messages postés mardi 12 juin 2007Date d'inscription ContributeurStatut 8 décembre 2016 Dernière intervention - 12 oct. 2016 à 15:08
Bonjour Le Pivert !
Désolée, je n'avais pas vu ta réponse... mais tu étais le prem's ! ;))
Bon, je propose exactement la même chose ! :)
m@rina
Répondre
Ajouter un commentaire
Utile
+1
moins plus
Bonjour

Voici un exemple :
http://www.cjoint.com/c/FJmngCkPYhl

en dessous de 50, ça change de couleur...

m@rina
Ajouter un commentaire
Utile
+0
moins plus
Grossièrement ce que je voudrais c'est quelque chose comme ça :

Private Sub Button_Head_Click()

Dim b As Integer

Button_Head.Value = 100

b = InputBox("Nouvelle valeur")

Button_Head.Value = b

If Button_Head.Value <= 50 Then
Button_Head.Backcolor = "&H000080FF&" 'le bouton change en orange

Else If Button_Head.Value <= 20 Then
Button_Head.Backcolor = "&H000000FF&" 'le bouton change en rouge

Else If Button_Head.Value = 0 Then
Button_Head.Backcolor = "&H00404040&" 'le bouton change en gris foncé

Else
Button_Head.Backcolor = "&H80000005&" 'le bouton reste de la couleur classique

End If

End Sub


Ce code est juste l'algorithme de ce que je voudrais :T

Ajouter un commentaire
Utile
+0
moins plus
Yes ! J'ai réussis à faire mon code grâce à vous deux ça marche impec'
Vous êtes géniaux, je vous adore :D

Merci !!
Ajouter un commentaire

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !