Rechercher : dans
Par :

[VB/VBA] commande sendkey

Dernière réponse le 18 jan 2006 à 09:24:16 antic80, le 16 jan 2006 à 16:49:17 
 Signaler ce message aux modérateurs

Bonjour a tous

voila je suis sur un programme vba sous excel et j'ai un soucis avec la commande sendkeys

j'ai une case a coché. quand je coche cette case une msgbox apparait. j'aimerai qu'au bout de 5 secondes la msgbox se retire toute seule

je pensais faire un timer avec dedans la commande sendkeys pour simuler l'appuie sur la touche entrée mais ca marche pas

quelqu'un peut m'aider ???

Meilleures réponses pour « [VB/VBA] commande sendkey » dans :
VBA Ajouter commandButton et le code qui va avec VoirCode relativement simple et qui ne nécessite pas d'explication complémentaire. Coller ces deux sub dans un module général (Module1 par exemple). Sub CréerBouton() Dim Obj As Object Dim Code As String Sheets("Feuil1").Select 'crée le...
Comment récupérer le résultat d'une commande dans une variable VoirComment récupérer le résultat d'une commande dans une variable Préambule Syntaxe Exemples Préambule Il est bien souvent nécessaire de récupérer le résultat d'une commande (ou de son code retour) dans une variable afin de pouvoir...
VBA et les collections d'objets. VoirVBA et les collections d'objets Quand plusieurs (beaucoup de) contrôles sont mis sur une feuille ou un Userform il est parfois fastidieux d'écrire du code dans chaque évènement des contrôles. Ce Tuto vous permet de traiter vos contrôles comme...
VBScript - Les constantes VoirQu'est-ce qu'une constante ? Une constante est un nom, facilement mémorisable, remplaçant une valeur (nombre, chaîne, etc.) qui ne change pas. L'objectif d'une constante est d'une part de permettre de rendre un programme plus lisible, d'autre part...
VBScript - Les fonctions de date et de temps VoirLes fonctions de date et de temps Fonction Description Date Retourne la date du système DateAdd(interval, number, date) Ajoute un intervalle de temps (interval) à une...

1

JvDo, le 18 jan 2006 à 00:52:29

Bonsoir,

j'ai adapté un code trouvé via google :

Sub Caseàcocher1_QuandClic()
    Set wshshell = CreateObject("WScript.Shell")
    madurée = 2     '2 secondes
    wshshell.Popup "mon message", madurée, "montitre"
End Sub


tu utilises un popup plutôt qu'un msgbox.
il faut référencer windows script host object model pour que ça marche. (remarque je n'ai pas essayé sans ce référencement)

cordialement

Répondre à JvDo

2

antic80, le 18 jan 2006 à 07:46:17

Ok je vais essayer ca et te remercie bocou

je te tiens au courant

Répondre à antic80

3

Armojax, le 18 jan 2006 à 08:50:25

Bonjour antic80,

Au lieu d'une MsgBox, tu peux te faire un petit UserForm (FormPopUp dans l'exemple) contenant seulement un label dans lequel tu écris ce que tu veux.
Tu appelles ce UserForm quand ta case est cochée :

Private Sub CheckBox1_Change()
  If CheckBox1.Value = True Then
    FormPopUp.Show
  End If
End Sub


Dans l'Initialise de FormPopUp, tu lances la macro qui va le renvoyer 5 secondes plus tard, avec la commande OnTime qui lance la macro CéFini :
Private Sub UserForm_Initialize()
  Application.OnTime Now + TimeValue("00:00:05"), "CéFini"
End Sub

Sub Céfini()
  Unload FormPopUp
End Sub

Répondre à Armojax

4

 antic80, le 18 jan 2006 à 09:24:16

Merci Armojax je vais garder ton code bien au chaud au cas ou

le code de JvDo marche a merveille

merci les gars

je precise pour JvDo que ca marche sans referencement

Répondre à antic80
Collection CommentÇaMarche.net