Este codigo impide que el programa se ejecute 2 veces. El codigo comprueba si existe una instancia del programa en ejecucion y de ser asi llama a la ventana principal del programa y le pasa el foco para despues cerrar la segunda instancia abierta:
Código:
Option Explicit



Private Declare Function FindWindow Lib "user32" Alias "FindWindowA"
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As Long) As Long



Private Sub Form_Initialize()

 Dim pHwnd As Long



 If App.PrevInstance Then

 pHwnd = FindWindow(vbNullString, "Form1")

 Call SetForegroundWindow(pHwnd)

 End



 End If

 

End Sub
Salu2...