Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilbert
Bonjour,
Essaie avec le code ci-dessous. Il te permet d'ouvrir un fichier d'après son extension.
Option Explicit
Private Declare Function ShellExec 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
Public Enum TypeOpen Hide = 0 Normal = 1 Minimized = 2 Maximized = 3 Restore = 9 End Enum
Function OpenFileExtend(FileName As String, Optional Window As TypeOpen =Minimized, Optional Operation As OP = OpExecute) As Variant Dim lRet As Long Dim varTaskID As Variant Dim stRet As String
'Dans Excel (et Word?) remplacer hWndAccessApp par Application.Hwnd lRet = ShellExec(hWndAccessApp, _ IIf(Operation = OpPrint, "print", "open"), FileName, vbNullString, vbNullString, Window) If lRet > ERROR_SUCCESS Then stRet = vbNullString lRet = -1 Else Select Case lRet Case ERROR_NO_ASSOC: varTaskID = Shell("rundll32.exe shell32.dll,OpenAs_RunDLL " & FileName, 1) lRet = (varTaskID <> 0) Case ERROR_OUT_OF_MEM: stRet = "Erreur: Pas assez de mémoire pour exécuter" Case ERROR_FILE_NOT_FOUND: stRet = "Erreur : Fichier non trouvé" Case ERROR_PATH_NOT_FOUND: stRet = "Erreur : Chemin non trouvé" Case ERROR_BAD_FORMAT: stRet = "Erreur : Type de fichier inconnu" Case Else: End Select End If OpenFileExtend = lRet & IIf(stRet = "", vbNullString, ", " & stRet) End Function
-- Cordialement,
Gilbert
"reserve-naturelle" a écrit dans le message de news:
Bonjour,
Je souhaite ouvrir un fichier (autres que word, excel...) a partir d'un
bouton
dans un formulaire access.
merci alain
Bonjour,
Essaie avec le code ci-dessous. Il te permet d'ouvrir un fichier d'après son
extension.
Option Explicit
Private Declare Function ShellExec 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
Public Enum TypeOpen
Hide = 0
Normal = 1
Minimized = 2
Maximized = 3
Restore = 9
End Enum
Function OpenFileExtend(FileName As String, Optional Window As TypeOpen
=Minimized, Optional Operation As OP = OpExecute) As Variant
Dim lRet As Long
Dim varTaskID As Variant
Dim stRet As String
'Dans Excel (et Word?) remplacer hWndAccessApp par Application.Hwnd
lRet = ShellExec(hWndAccessApp, _
IIf(Operation = OpPrint, "print", "open"), FileName, vbNullString,
vbNullString, Window)
If lRet > ERROR_SUCCESS Then
stRet = vbNullString
lRet = -1
Else
Select Case lRet
Case ERROR_NO_ASSOC:
varTaskID = Shell("rundll32.exe shell32.dll,OpenAs_RunDLL " &
FileName, 1)
lRet = (varTaskID <> 0)
Case ERROR_OUT_OF_MEM:
stRet = "Erreur: Pas assez de mémoire pour exécuter"
Case ERROR_FILE_NOT_FOUND:
stRet = "Erreur : Fichier non trouvé"
Case ERROR_PATH_NOT_FOUND:
stRet = "Erreur : Chemin non trouvé"
Case ERROR_BAD_FORMAT:
stRet = "Erreur : Type de fichier inconnu"
Case Else:
End Select
End If
OpenFileExtend = lRet & IIf(stRet = "", vbNullString, ", " & stRet)
End Function
--
Cordialement,
Gilbert
"reserve-naturelle" <reserve-naturelle@domain-xyz.in> a écrit dans le
message de news:bL6dnQrs_LWFUuTU4p2dnAA@giganews.com...
Bonjour,
Je souhaite ouvrir un fichier (autres que word, excel...) a partir d'un
Essaie avec le code ci-dessous. Il te permet d'ouvrir un fichier d'après son extension.
Option Explicit
Private Declare Function ShellExec 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
Public Enum TypeOpen Hide = 0 Normal = 1 Minimized = 2 Maximized = 3 Restore = 9 End Enum
Function OpenFileExtend(FileName As String, Optional Window As TypeOpen =Minimized, Optional Operation As OP = OpExecute) As Variant Dim lRet As Long Dim varTaskID As Variant Dim stRet As String
'Dans Excel (et Word?) remplacer hWndAccessApp par Application.Hwnd lRet = ShellExec(hWndAccessApp, _ IIf(Operation = OpPrint, "print", "open"), FileName, vbNullString, vbNullString, Window) If lRet > ERROR_SUCCESS Then stRet = vbNullString lRet = -1 Else Select Case lRet Case ERROR_NO_ASSOC: varTaskID = Shell("rundll32.exe shell32.dll,OpenAs_RunDLL " & FileName, 1) lRet = (varTaskID <> 0) Case ERROR_OUT_OF_MEM: stRet = "Erreur: Pas assez de mémoire pour exécuter" Case ERROR_FILE_NOT_FOUND: stRet = "Erreur : Fichier non trouvé" Case ERROR_PATH_NOT_FOUND: stRet = "Erreur : Chemin non trouvé" Case ERROR_BAD_FORMAT: stRet = "Erreur : Type de fichier inconnu" Case Else: End Select End If OpenFileExtend = lRet & IIf(stRet = "", vbNullString, ", " & stRet) End Function
-- Cordialement,
Gilbert
"reserve-naturelle" a écrit dans le message de news:
Bonjour,
Je souhaite ouvrir un fichier (autres que word, excel...) a partir d'un
bouton
dans un formulaire access.
merci alain
reserve-naturelle
Gilbert a écrit le 23/01/2009 à 18h34 :
Bonjour,
Essaie avec le code ci-dessous. Il te permet d'ouvrir un fichier d'après son extension.
Option Explicit
Private Declare Function ShellExec 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
Public Enum TypeOpen Hide = 0 Normal = 1 Minimized = 2 Maximized = 3 Restore = 9 End Enum
Function OpenFileExtend(FileName As String, Optional Window As TypeOpen =Minimized, Optional Operation As OP = OpExecute) As Variant Dim lRet As Long Dim varTaskID As Variant Dim stRet As String
'Dans Excel (et Word?) remplacer hWndAccessApp par Application.Hwnd lRet = ShellExec(hWndAccessApp, _ IIf(Operation = OpPrint, "print", "open"), FileName, vbNullString, vbNullString, Window) If lRet > ERROR_SUCCESS Then stRet = vbNullString lRet = -1 Else Select Case lRet Case ERROR_NO_ASSOC: varTaskID = Shell("rundll32.exe shell32.dll,OpenAs_RunDLL " & FileName, 1) lRet = (varTaskID <> 0) Case ERROR_OUT_OF_MEM: stRet = "Erreur: Pas assez de mémoire pour exécuter" Case ERROR_FILE_NOT_FOUND: stRet = "Erreur : Fichier non trouvé" Case ERROR_PATH_NOT_FOUND: stRet = "Erreur : Chemin non trouvé" Case ERROR_BAD_FORMAT: stRet = "Erreur : Type de fichier inconnu" Case Else: End Select End If OpenFileExtend = lRet & IIf(stRet = "", vbNullString, ", " & stRet) End Function
-- Cordialement,
Gilbert
"reserve-naturelle" a écrit dans le message de news:
Bonjour,
Je souhaite ouvrir un fichier (autres que word, excel...) a partir d'un
bouton
dans un formulaire access.
merci alain
merci
pour ce code mais étant néophyte, je ne comprend pas trop où l'on indique le chemin d'accès au fichier.
certaine ligne de code apparaissent en rouge : Function OpenFileExtend(FileName As String, Optional Window As TypeOpen =Minimized, Optional Operation As OP = OpExecute) As Variant
je suppose dans c'est dns ces ligne que je dois indiquer les élements, mais je ne sais pas trop comment.
concrètement je dois ouvrir un fichier qui se trouve dans c:serenaxxx.r avec le logiciel tinn-R qui se trouve dans c:program filetinn-rbintinn.exe
merci
alain
Gilbert a écrit le 23/01/2009 à 18h34 :
Bonjour,
Essaie avec le code ci-dessous. Il te permet d'ouvrir un fichier d'après
son
extension.
Option Explicit
Private Declare Function ShellExec 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
Public Enum TypeOpen
Hide = 0
Normal = 1
Minimized = 2
Maximized = 3
Restore = 9
End Enum
Function OpenFileExtend(FileName As String, Optional Window As TypeOpen
=Minimized, Optional Operation As OP = OpExecute) As Variant
Dim lRet As Long
Dim varTaskID As Variant
Dim stRet As String
'Dans Excel (et Word?) remplacer hWndAccessApp par Application.Hwnd
lRet = ShellExec(hWndAccessApp, _
IIf(Operation = OpPrint, "print", "open"), FileName,
vbNullString,
vbNullString, Window)
If lRet > ERROR_SUCCESS Then
stRet = vbNullString
lRet = -1
Else
Select Case lRet
Case ERROR_NO_ASSOC:
varTaskID = Shell("rundll32.exe shell32.dll,OpenAs_RunDLL " &
FileName, 1)
lRet = (varTaskID <> 0)
Case ERROR_OUT_OF_MEM:
stRet = "Erreur: Pas assez de mémoire pour exécuter"
Case ERROR_FILE_NOT_FOUND:
stRet = "Erreur : Fichier non trouvé"
Case ERROR_PATH_NOT_FOUND:
stRet = "Erreur : Chemin non trouvé"
Case ERROR_BAD_FORMAT:
stRet = "Erreur : Type de fichier inconnu"
Case Else:
End Select
End If
OpenFileExtend = lRet & IIf(stRet = "", vbNullString, ",
" & stRet)
End Function
--
Cordialement,
Gilbert
"reserve-naturelle" a
écrit dans le
message de news:
Bonjour,
Je souhaite ouvrir un fichier (autres que word, excel...) a partir d'un
bouton
dans un formulaire access.
merci
alain
merci
pour ce code mais étant néophyte, je ne comprend pas trop où l'on indique le chemin d'accès au fichier.
certaine ligne de code apparaissent en rouge :
Function OpenFileExtend(FileName As String, Optional Window As TypeOpen
=Minimized, Optional Operation As OP = OpExecute) As Variant
Essaie avec le code ci-dessous. Il te permet d'ouvrir un fichier d'après son extension.
Option Explicit
Private Declare Function ShellExec 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
Public Enum TypeOpen Hide = 0 Normal = 1 Minimized = 2 Maximized = 3 Restore = 9 End Enum
Function OpenFileExtend(FileName As String, Optional Window As TypeOpen =Minimized, Optional Operation As OP = OpExecute) As Variant Dim lRet As Long Dim varTaskID As Variant Dim stRet As String
'Dans Excel (et Word?) remplacer hWndAccessApp par Application.Hwnd lRet = ShellExec(hWndAccessApp, _ IIf(Operation = OpPrint, "print", "open"), FileName, vbNullString, vbNullString, Window) If lRet > ERROR_SUCCESS Then stRet = vbNullString lRet = -1 Else Select Case lRet Case ERROR_NO_ASSOC: varTaskID = Shell("rundll32.exe shell32.dll,OpenAs_RunDLL " & FileName, 1) lRet = (varTaskID <> 0) Case ERROR_OUT_OF_MEM: stRet = "Erreur: Pas assez de mémoire pour exécuter" Case ERROR_FILE_NOT_FOUND: stRet = "Erreur : Fichier non trouvé" Case ERROR_PATH_NOT_FOUND: stRet = "Erreur : Chemin non trouvé" Case ERROR_BAD_FORMAT: stRet = "Erreur : Type de fichier inconnu" Case Else: End Select End If OpenFileExtend = lRet & IIf(stRet = "", vbNullString, ", " & stRet) End Function
-- Cordialement,
Gilbert
"reserve-naturelle" a écrit dans le message de news:
Bonjour,
Je souhaite ouvrir un fichier (autres que word, excel...) a partir d'un
bouton
dans un formulaire access.
merci alain
merci
pour ce code mais étant néophyte, je ne comprend pas trop où l'on indique le chemin d'accès au fichier.
certaine ligne de code apparaissent en rouge : Function OpenFileExtend(FileName As String, Optional Window As TypeOpen =Minimized, Optional Operation As OP = OpExecute) As Variant