Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment utiliser les API sous VBA ???

3 réponses
Avatar
Danny
Bonjour !

J'aimerais savoir comment utiliser les API Win32 sous VBA dans Access.
Si vous avez un site , tutoriel, FAQ ca serait bien apprécié.

Je regrade surtout pour l'API ShellExecute.
Ex.: ShellExecute( 0, "print", RepLCI, 0, 0, SW_SHOWNORMAL );

Merci !

3 réponses

Avatar
Sylvain Lafontaine
Voici le module que j'utilise pour interfacer avec ShellExecute:

Option Compare Database
Option Explicit

Private Const SW_SHOWNORMAL = &H1

Private Declare Function ShellExecute 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 Sub OuvrirFichier(NomFichier As String)

Call ShellExecute(0, "open", NomFichier, 0, 0, 0)

End Sub

Public Sub EditerFichier(NomFichier As String)

Call ShellExecute(0, "edit", NomFichier, 0, 0, 0)

End Sub

Public Sub OuvrirFichier_AvecPgm(NomPgm As String, NomFichier As String)

NomFichier = """" & NomFichier & """"

Dim resultat As Long
resultat = ShellExecute(0, "open", NomPgm, NomFichier, 0, SW_SHOWNORMAL)

If (resultat <= 32) Then
MsgBox "Le programme suivant n'a pas été trouvé : " & NomPgm _
& vbCrLf2 & "Vérifiez son chemin d'accès, svp.", vbCritical,
"Erreur!"
End If

End Sub


Shell32.dll contient deux versions: ShellExecuteA et ShellExecuteW;
ShellExecuteW étant la version Unicode. La référence suivante vous donne
des infos supplémentaires sur ShellExecuteA:

http://www.plmconsulting.com/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic;f!;t0033

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: http://cerbermail.com/?QugbLEWINF


"Danny" wrote in message
news:
Bonjour !

J'aimerais savoir comment utiliser les API Win32 sous VBA dans Access.
Si vous avez un site , tutoriel, FAQ ca serait bien apprécié.

Je regrade surtout pour l'API ShellExecute.
Ex.: ShellExecute( 0, "print", RepLCI, 0, 0, SW_SHOWNORMAL );

Merci !


Avatar
Danny
Merci beaucoup !!
:)


Voici le module que j'utilise pour interfacer avec ShellExecute:

Option Compare Database
Option Explicit

Private Const SW_SHOWNORMAL = &H1

Private Declare Function ShellExecute 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 Sub OuvrirFichier(NomFichier As String)

Call ShellExecute(0, "open", NomFichier, 0, 0, 0)

End Sub

Public Sub EditerFichier(NomFichier As String)

Call ShellExecute(0, "edit", NomFichier, 0, 0, 0)

End Sub

Public Sub OuvrirFichier_AvecPgm(NomPgm As String, NomFichier As String)

NomFichier = """" & NomFichier & """"

Dim resultat As Long
resultat = ShellExecute(0, "open", NomPgm, NomFichier, 0, SW_SHOWNORMAL)

If (resultat <= 32) Then
MsgBox "Le programme suivant n'a pas été trouvé : " & NomPgm _
& vbCrLf2 & "Vérifiez son chemin d'accès, svp.", vbCritical,
"Erreur!"
End If

End Sub


Shell32.dll contient deux versions: ShellExecuteA et ShellExecuteW;
ShellExecuteW étant la version Unicode. La référence suivante vous donne
des infos supplémentaires sur ShellExecuteA:

http://www.plmconsulting.com/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic;f!;t0033

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: http://cerbermail.com/?QugbLEWINF


"Danny" wrote in message
news:
Bonjour !

J'aimerais savoir comment utiliser les API Win32 sous VBA dans Access.
Si vous avez un site , tutoriel, FAQ ca serait bien apprécié.

Je regrade surtout pour l'API ShellExecute.
Ex.: ShellExecute( 0, "print", RepLCI, 0, 0, SW_SHOWNORMAL );

Merci !







Avatar
Danny
Savez-vous comment "by-passer" la fenetre qui demande de choisir l'imprimante
et d'appuyer sur Imprimer ?

Moi je veux faire de l'impression en batch, sans interventions humaine...

Merci !!!
Danny.




Merci beaucoup !!
:)


Voici le module que j'utilise pour interfacer avec ShellExecute:

Option Compare Database
Option Explicit

Private Const SW_SHOWNORMAL = &H1

Private Declare Function ShellExecute 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 Sub OuvrirFichier(NomFichier As String)

Call ShellExecute(0, "open", NomFichier, 0, 0, 0)

End Sub

Public Sub EditerFichier(NomFichier As String)

Call ShellExecute(0, "edit", NomFichier, 0, 0, 0)

End Sub

Public Sub OuvrirFichier_AvecPgm(NomPgm As String, NomFichier As String)

NomFichier = """" & NomFichier & """"

Dim resultat As Long
resultat = ShellExecute(0, "open", NomPgm, NomFichier, 0, SW_SHOWNORMAL)

If (resultat <= 32) Then
MsgBox "Le programme suivant n'a pas été trouvé : " & NomPgm _
& vbCrLf2 & "Vérifiez son chemin d'accès, svp.", vbCritical,
"Erreur!"
End If

End Sub


Shell32.dll contient deux versions: ShellExecuteA et ShellExecuteW;
ShellExecuteW étant la version Unicode. La référence suivante vous donne
des infos supplémentaires sur ShellExecuteA:

http://www.plmconsulting.com/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic;f!;t0033

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: http://cerbermail.com/?QugbLEWINF


"Danny" wrote in message
news:
Bonjour !

J'aimerais savoir comment utiliser les API Win32 sous VBA dans Access.
Si vous avez un site , tutoriel, FAQ ca serait bien apprécié.

Je regrade surtout pour l'API ShellExecute.
Ex.: ShellExecute( 0, "print", RepLCI, 0, 0, SW_SHOWNORMAL );

Merci !