Appel d'une fonction sur sélection d'une case [RESOLU] [VB] - VB/VBA/VBS - Programmation
Marsh Posté le 22-05-2006 à 14:54:00
t'arrives pas à quoi :
détecter si B4 est sélectionnée ?
ou
lancer un programme externe ?
Marsh Posté le 22-05-2006 à 21:43:20
Curieuse méthode, en général on clique sur un bouton pour accéder à une boite de dialogue ....
Pour Excel essayes
fichier = Application.GetOpenFilename("All Files (*.PRT),*.PRT" )
If fichier = False Then Exit Sub
......
+ l'aide en ligne sur GetOpenFilename
Pour lancer un programme externe
.....
chemin = "C:\Delphi7\Projects\SysDiff\SysDiff_Expr_Light\SysDiff.exe"
Shell chemin
.....
Il est possible de passer des paramètres
.....
Shell """C:\Program Files\Windows Media Player\wmplayer.exe"" ""H:\chemin\fichier.avi
""", vbMaximizedFocus
.....
Marsh Posté le 23-05-2006 à 09:37:59
Arjuna a écrit : t'arrives pas à quoi : |
Ben j'arrive pas à lancer un programme VB en sélection de ma case B4
kiki29 a écrit : Curieuse méthode, en général on clique sur un bouton pour accéder à une boite de dialogue .... |
Il y a un malentendu, dans ta solution on appelera par exemple windows media player avec un fichier alors que dans mon cas, je veux (seulement??) appeler un programme VB qui est dans un des modules sur la feuille.
En fait il se trouve que c'est un programme qui est censé aider à la saisie, donc il est plus pratique d'utilisation dès que l'on clique dessus.
Merci en tout cas
Marsh Posté le 23-05-2006 à 10:53:27
Je connais pas de moyen simple de le faire en VBA et à mon avis ce n'est pas gérer en VBA.je peux me tromper
Donc si tu veux appeler une USerForm pour la saisie fait le comme je te l'ai dit via un bouton
Marsh Posté le 23-05-2006 à 11:18:22
Ben c'est plus duVB que du VBA mais en tout cas c'est sympa d'avoir essayé de m'aider, j'essaie d'autres solutions, si je trouve je vous en ferai profiter
Marsh Posté le 23-05-2006 à 11:24:24
Zorro est arrivé
Code :
|
A mettre dans le code associé à la Sheet qui doit prendre en compte le click sur B4
Marsh Posté le 23-05-2006 à 11:25:26
/me trouve que vous bloquez sur des trucs vraiment simple des fois
Un petit coup de "F1" et j'ai trouvé en 30 secondes comment faire...
Marsh Posté le 23-05-2006 à 11:42:29
Arjuna a écrit : Zorro est arrivé
|
2 questions :
1°
Code :
|
kesako??? j'appelle ensuite un programme dans mon module donc je comprends pas trop ce que ça fait là je pense qu'il faut changer.
2°
Il me marque DTC de partout même en B4, c'est facheux....
Marsh Posté le 23-05-2006 à 11:44:13
Moi j'ai fait la macro avec Excel 2003
Avec les versions plus anciennes, il faut peut-être modifier ce test : Target.Cells.Address = "$B$4"
Fait un MsgBix de Target.Cells.Address pour voir ce qu'il contient quand tu cliques sur B4
Marsh Posté le 23-05-2006 à 11:44:51
ReplyMarsh Posté le 23-05-2006 à 12:04:17
Arjuna a écrit : Sinon, en effet, l'appel à Notepad est à remplacer par l'appel de ton module |
Yes c'est deja mieux, après dans le shell... j'avoue que j'ai quelques problèmes (boulet inside ), je dois appeler une macro qui est dans le module 2 et je vois pas tellement comment ca fonctionne je persévère
edit: c'est grave si le fichier que l'on doit appeler est une macro et non un prog, j'ai regardé un peu dans l'aide sur la fonction shell, il n'y a rien de précisé.
Marsh Posté le 23-05-2006 à 12:13:41
N'utilise pas shell...
Call Module2.MaMacroQuiVaBien()
PS: et dans le cas d'une Macro, c'est pas un "programme", juste une "fonction".
Marsh Posté le 23-05-2006 à 12:20:32
CA MAAAAAARCHE!!!!
(sorry pour le flood et le caps lock)
bon j'ai fait péter la condition else vu que je protège le reste des cellules
edit: Thanks arjuna pour tout parce que j'aurais vraiment pas trouvé seul
(ca mérite un combo)
Marsh Posté le 23-05-2006 à 12:26:11
Arjuna a écrit : ben quoi ? dtc partout c'est cool |
Ben avec la protection ca fait surtout un gros plantage mais ca pourrait effectivement être joli
Marsh Posté le 22-05-2006 à 14:49:47
salut à tous,
Je vous explique mon problème, je suis en train de créer un fichier excel avec des petits programmes, Or je voudrais qu'en sélectionnant une case (ex B4) ca me lance un programme qui ouvre une boîte de dialogue.
Je suis perdu, je n'y arrive aps du tout, quelqu'un aurait-il la bonté de m'aider???
Merci d'avance
Message édité par nexius26 le 23-05-2006 à 14:39:25