Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Commandbutton1

K

Krokodyle

Guest
Où se trouve cette fonction ? Moi je n'ai que général et worksheet qui s'affichent !
Merci d'avance,

Krokodyle
 
@

@+Thierry

Guest
Bonjour Krokodyle

Tu parles de quoi là ? Un CommandButton est généralement lié au Private module de la WorkSheet où il se trouve ?? Et ce n'est pas une Fonction !

Vu que c'est suite à ton "Chat" dans le fil de discussion : Mot-de-passe il vaudrait mieux que tu expliques de quel fichier il s'agit vu qu'il y a eu plein de fichiers échangés... et en BAL en plus... Moi je ne sais pas !

T'es franchement difficile à suivre en tout cas !! lol

Juste pour te faire comprendre un commandbutton1 dans une sheet1 peut avoir ce genre de code dans le private module de la sheet1 :

Private Sub CommandButton1_Click()
MsgBox "Hello World !"
End Sub

Mis à part ça je ne comprends pas ta question !
@+Thierry
 
Dernière modification par un modérateur:
K

Krokodyle

Guest
En fait comme l'a dit Thierry, ce n'est pas une fonction mais une commande dans visual basic editor que je n'avais pas trouvé de suite. J'ai fait une recherche et c'est bon j'ai trouvé ou ça se trouvait et comment ça marchait en gros. Il reste juste un petit problème et non des moindres : je ne sais comment créer un bouton et le relier à un userform de sorte que lorsque l'on clique sur le bouton celui-ci affiche la fenêtre userform pour demander un mot de passe par exple.
D'avance, merci.

Krokodyle
 
@

@+Thierry

Guest
Re Kroko, Bonjour Didier,

Ben il faut procéder comme suit :

1° ) Depuis ta feuille...... Tu cherches et tu affiches la barre d'outil "Boites à outils contrôles"

2° ) Dans cette barre tu cherches le bouton "bouton de commande" tu clicks dessus et tu dessines ton "CommandButton1" sur ta feuille.

3° ) Tu clicks sur ce bouton ainsi créé.

4° ) Tu vas te retrouver dans VBE en face du private module de la feuille en question avec ce code :
Private Sub CommandButton1_Click()
End Sub

5° ) Tu écris ceci (NB pour autant que ton UserForm existe et qu'il se nomme UserForm1)
Private Sub CommandButton1_Click()
UserForm1.Show
End Sub

6° ) tu retournes dans Excel et tu clicks sur le premier bouton de la "Boites à outils contrôles", ce bouton est le mode "Design"(mode création)... tu le mets en OFF (c'est un bouton qui ressemble à une équerre bleue avec une règle...

6° BIS retournes en mode "Design"(création) pour colorier / changer la taille etc du bouton... en cliquant à droite une fois le bouton sélectionné, dans le menu contextuel tu auras "Propriété"... de là tu peux définir un tas de format....

Voilà c'est tout !!!
Je pense que tu comprendras si tu suis bien une à une toutes ces étapes.

Bon Aprèm
@+Thierry
 
K

Krokodyle

Guest
Merci beaucoup Thierry !
J'ai pas encore essayé je voulais juste te remercier pour tes explications claires et le temps que tu as passé à m'écrire cette réponse. Je retourne sur Excel et je vais le mettre en application, je te tiens de toute facon au courant.
@+

Krokodyle
 
K

Krokodyle

Guest
Non franchement c'est vrai, et en plus ça a marché !! Merci encore !
Mon petit programme est presque fini et je voulais remercier toutes les personnes qui m'ont aidé à résoudre mes problèmes avec Excel. Vous avez tous été tellement sympa et ne peux que souhaiter longue vie au Forum !!!
Bonne soirée tout le monde !

Krokodyle
 
S

steve

Guest
msgbox

salut a tous


je n' arrive pas a faire fonctionner le code et pourtant cela doit etre simple
.



Private Sub Worksheet_Change(ByVal Target As Range)
if "i6" > 170 Then MsgBox ("ATTENTION DEPASSEMENT ")
end if
End Sub

merci d'avance
 
J

Jean-Marie

Guest
Bonsoir Steve

I6 doit être une variable déclarée en dim après le nom de ta procèdure et fonction.

ou alor I6 correspond à la cellule I6 dans ce cas tu doit écrire

Il range("I6")>170 then msgBox ("ATTENTION DEPASSEMENT")
end if
end sub

Corrige moi Thierry si je me trompe.

@+Jean-Marie

PS -> et voilà les petits soucis du VBA, rire
 
@

@+Thierry

Guest
Bonsoir,

J'arrive un peu tard mais Jean Marie tu as bien répondu mis à part le End If de trop comme l'a justement remarqué StePlof.

Deux Possibilité d'écrire les IF ou bien "Straight" pour une action unique
Sub TEST()
If Range("I6") > 170 Then MsgBox "ATTENTION DEPASSEMENT"
End Sub

Ou bien "Softly" pour une suite d'action
Sub TEST()
If Range("I6") > 170 Then
MsgBox "ATTENTION DEPASSEMENT"
Exit Sub
End Sub

car on ne peut pas écrire
If Range("I6") > 170 Then MsgBox "ATTENTION DEPASSEMENT" exit sub

et si on écrit
Sub TEST()
If Range("I6") > 170 Then Exit Sub
MsgBox "ATTENTION DEPASSEMENT"
End Sub
on aura le message Uniquement si i6 est plus petit que 170...

Enfin voilà.... c'est pas des Macros commandes... mais c'est amusant Jean Marie

Bonne Soirée
@+Thierry
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…