Déterminer si l'application est en cours d'exécution avec Excel
Objectif
Ai un fichier Excel avec un bouton "Recherche" qui s'ouvre d'un programme personnalisé. Ce programme est utilisé pour les études. Si le programme est déjà ouvert lorsque l'utilisateur clique sur le bouton, faire popup et de se concentrer sur ce programme.
Situation Actuelle
Voici le code que j'utilise pour le faire fonctionner:
Bouton De Recherche
Private Sub btnSearch_Click()
Dim x As Variant
Dim Path As String
If Not IsAppRunning("Word.Application") Then
Path = "C:\Tmp\MyProgram.exe"
x = Shell(Path, vbNormalFocus)
End If
End Sub
IsAppRunning()
Function IsAppRunning(ByVal sAppName) As Boolean
Dim oApp As Object
On Error Resume Next
Set oApp = GetObject(, sAppName)
If Not oApp Is Nothing Then
Set oApp = Nothing
IsAppRunning = True
End If
End Function
Ce code ne fonctionne que quand j'ai mis "Mot.L'Application" que le fichier exécutable. Si j'ai essayer de mettre "MyProgram.L'Application" la fonction ne verra jamais le programme est en cours d'exécution. Comment puis-je savoir que "MyProgram.exe" est actuellement ouvert?
De plus, j'avais besoin de mettre l'accent sur...
OriginalL'auteur Alex | 2015-04-22
Vous devez vous connecter pour publier un commentaire.
Vous pouvez le vérifier plus directement par l'obtention d'une liste de processus ouverts.
Cette recherche basée sur le nom du processus, de retourner true/false comme approprié.
OriginalL'auteur enderland
Voici comment je l'ai ramené à la fenêtre de recherche à l'avant:
Maintenant, si la fenêtre a été réduite au minimum et que l'utilisateur clique sur le bouton rechercher de nouveau, la fenêtre sera tout simplement pop up.
OriginalL'auteur Alex
Voulais juste vous dire merci pour cette solution. Tout juste commencé à jouer avec les code et je voulais automatiser mon travail un peu. Ce code permet de coller la sélection actuelle dans la feuille excel dans un pays déjà ouverts application avec comme seul clic. Va me rendre la vie tellement plus facile!!
Merci pour le partage
OriginalL'auteur Rodney Cuthbertson