Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
'*********************************************
Sub CLAVIERVIRTUEL()
Dim strOS$, tOS$: Dim RetVaL
strOS = Application.OperatingSystem
tOS = Trim(Mid(strOS, InStr(1, strOS, ")") + 1, 255))
Select Case tOS
Case "NT 6.00"
ShellExecute 0, "open", "osk.exe", 0, 0, 1
Case "NT 5.01"
RetVaL = Shell("C:\WINDOWS\system32\osk.exe", 1)
End Select
End Sub
4) Je crée le bouton sur la barre dans un nouveau classeur.
Lorsqu'on affecte la macro au bouton
(créée manuellement, clic-droit sur barre d'outils Standard, ->Personnaliser->Commandes/Macros->Cliquer/déplacer sur barre d'outils
Mettre la syntaxe suivante dans:Nom de la macro
PERSO.XLS!CLAVIERVIRTUEL
Clic droit dans une des barres de Menu
ChoisirPersonnaliseronglet : Commandes
Macro
Bouton personnaliséglisser dans la barre voulue
Clic droit sur la binette.
Changer le nom, l'icône.
Affecter un lien (pas une macro !)ouvrir
Adresse : ...\WINDOWS\system32\osk.exeFermer
Seul problème : Message d'avertissement au clic !