Esta rotina existe aqui na VBWEB na secao de dicas
Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Sub Main()
Dim m_hWnd As Long
m_hWnd = FindWindow(vbNullString, "NOME_DO_PROGRAMA")
If m_hWnd > 0 Then
msgbox "A aplicação ja foi aberta"
End If
End Sub
Para fechar tambem tem aqui em dicas.
Você pode usar as funções API FindWindow e PostMessage para encontrar a janela e em seguida fechar-la. Este exemplo mostra como fechar a janela do "Calculator" usando a caption da janela.
Dim winHwnd As Long
Dim RetVal As Long
winHwnd = FindWindow(vbNullString, "Calculator")
Debug.Print winHwnd
If winHwnd <> 0 Then
RetVal = PostMessage(winHwnd, WM_CLOSE, 0&, 0&)
If RetVal = 0 Then
MsgBox "Error posting message."
End If
Else
MsgBox "The Calculator is not open."
End If
Você precisa declarar a função seguinte na secção de declaração do Form ou de um Módulo do projeto.
Declare Function FindWindow Lib "user32" Alias _
"FindWindowA" (ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Declare Function PostMessage Lib "user32" Alias _
"PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long
Public Const WM_CLOSE = &H10