VBA ouvrir clavier virtuel à l'affichage userform [Résolu/Fermé]

Signaler
-
 kevina -
Bonjour,

Je n'arrive pas à ouvrir le clavier virtuel de windows lors de l'affichage d'un de mes userform.

J'ai essayé de coder dans mon userform:
Private Sub LaTextBox_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Me.ShortcutMenu = False
If Button = acRightButton Then
Shell "osk.exe"
End If
End Sub

Je souhaiterai que celui apparaisse lorsque l'utilisateur clique dans la textebox1.

Merci de votre aide,
Kevina

7 réponses

Messages postés
15377
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
17 octobre 2020
1 377
Bonjour,

'http://vb.developpez.com/faq/?page=Systeme#killprocess
Private Sub CommandButton2_Click()
    KillProcess "osk.exe"
End Sub

Public Function KillProcess(ByVal ProcessName As String) As Boolean
    Dim svc As Object
    Dim sQuery As String
    Dim oproc
    Set svc = GetObject("winmgmts:root\cimv2")
    sQuery = "select * from win32_process where name='" & ProcessName & "'"
    For Each oproc In svc.execquery(sQuery)
        oproc.Terminate
    Next
    Set svc = Nothing
End Function
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci

Merci beaucoup ça fonctionne très bien!
Messages postés
15377
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
17 octobre 2020
1 377
Bonjour,

Private Sub LaTextBox_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    Me.ShortcutMenu = False
    If Button = 1 Then    'clic gauche
        retval = Shell("cmd /c C:\Windows\System32\osk.exe", vbNormalFocus)
    End If
End Sub
Bonjour,

Merci pour votre réponse, mais malheureusement le clavier ne s'ouvre toujours pas.. Pourtant la commande "C:\Windows\System32\osk.exe" fonctionne en utilisant sous Windows..
Messages postés
6975
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
17 octobre 2020
561
Bonjour,

Avec ceci:

 Shell "CMD /C " & """" & "C:\Windows\System32\osk.exe" & """"

Messages postés
15377
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
17 octobre 2020
1 377
Re,

faudra m'expliquer pourquoi ca marche chez moi !!!!!!!

Est-ce que le code se deroule ???
Messages postés
15377
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
17 octobre 2020
1 377
Re,

fichier test avec ligne de commande au plus simple

https://www.cjoint.com/c/EGgmPsWLvsL
Merci beaucoup pour vos réponses. Désolé f894009 je ne comprends pas non plus pourquoi ca ne fonctionnait pas.
Cs_le_pivert encore une fois merci !
Voilà le code pour ouvrir le clavier lorque mon userform est activé:

Private Sub UserForm_Activate()
'open virtual keyboard
keyboard = Shell("CMD /C " & """" & "C:\Windows\System32\osk.exe" & """")
End Sub


Pour fermer le clavier j'ai essayé (mais ca ne fonctionne pas) :
Private Sub UserForm_Click()
KillApp keyboard
End Sub