Lancement fichier externe sous excel - Logiciels - Windows & Software
Marsh Posté le 26-01-2005 à 19:36:52
'------------------
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpszOp As String, ByVal lpszFile As String, ByVal lpszParams As String, ByVal lpszDir As String, ByVal fsShowCmd As Long) As Long
'hwnd : Identificateur de fenêtre parent.
'lpszOp : Opération à effectuer open ou print.
'lpszFile : Fichier à ouvrir.
'lpszParams : Paramètres de l'application ----->>>>>>lorsque lpszFile spécifie une application exécutable.
'lpszDir : Répertoire par défaut ==> C:\.
'fsShowCmd : Mode d'ouverture de la fenêtre d'application (Réduit,Normal,Agrandi)
'------------------
Const SE_ERR_FNF = 2&
Const SE_ERR_PNF = 3&
Const SE_ERR_ACCESSDENIED = 5&
Const SE_ERR_OOM = 8&
Const SE_ERR_DLLNOTFOUND = 32&
Const SE_ERR_SHARE = 26&
Const SE_ERR_ASSOCINCOMPLETE = 27&
Const SE_ERR_DDETIMEOUT = 28&
Const SE_ERR_DDEFAIL = 29&
Const SE_ERR_DDEBUSY = 30&
Const SE_ERR_NOASSOC = 31&
Const ERROR_BAD_FORMAT = 11&
Const SW_SHOWNORMAL = 1
'---------------------------------------------------
'---indiquer le fichier avec le chemin
'ShellExecute analyse la chaîne lpszFile pour
'déterminer 's'il s'agit d'un fichier ou d'une
'application.
'Dans le cas d'un fichier, l'application est déterminée
' par une recherche dans la base de registre.
'Dans le cas d'une page html,
'la chaîne "http://" permet d'identifier
'le protocole HTTP,
'ce qui provoque la lecture de la clé
' "HKCR\http\shell\open"
'afin d'identifier le browser défini par défaut.
'-----------------la proc -------------------------------
Public Sub StartDoc(ByVal szDoc As String)
Dim lRet As Long, sMessage As String
Dim lErrNum As Long
Dim Disk As String
Disk = "C:\"
lRet = ShellExecute(0, "Open", szDoc, "", Disk, SW_SHOWNORMAL)
If lRet <= 32 Then
lErrNum = 4000 + lRet
Select Case lRet
Case SE_ERR_FNF
'Err.Raise lErrNum, "Fichier introuvable"
MsgBox "Fichier " & szDoc & " est introuvable..."
Case SE_ERR_PNF
Err.Raise lErrNum, "Path not found"
Case SE_ERR_ACCESSDENIED
Err.Raise lErrNum, "Access denied"
Case SE_ERR_OOM
Err.Raise lErrNum, "Out of memory"
Case SE_ERR_DLLNOTFOUND
Err.Raise lErrNum, "DLL not found"
Case SE_ERR_SHARE
Err.Raise lErrNum, "A sharing violation occurred "
Case SE_ERR_ASSOCINCOMPLETE
Err.Raise lErrNum, "Incomplete or invalid file association "
Case SE_ERR_DDETIMEOUT
Err.Raise lErrNum, "DDE Time out"
Case SE_ERR_DDEFAIL
Err.Raise lErrNum, "DDE transaction failed"
Case SE_ERR_DDEBUSY
Err.Raise lErrNum, "DDE busy"
Case SE_ERR_NOASSOC
Err.Raise lErrNum, "No association for file extension "
Case ERROR_BAD_FORMAT
Err.Raise lErrNum, "Invalid EXE file or error n EXE image"
Case Else
Err.Raise lErrNum, "Unknown error"
End Select
End If
End Sub
Private Sub CommandButton1_Click()
StartDoc "C:\tavideo.avi"
End Sub
Marsh Posté le 25-01-2005 à 14:42:57
Bonjour,
Je cherche désespérément à créer un bouton sous Excel qui me permettrait de lancer une vidéo.
J'imagine qu'il doit falloir utiliser une macro (si bien sûr c'est faisable) mais je ne m'y connais absolument pas dans ce domaine.
Si quelqu'un peut m'aider ce serait vraiment bien.