Erreur à l'ouverture d'un .pdf avec l'API ShellExecute
Résolu/Fermé
Hama'
Messages postés
4
Date d'inscription
mercredi 8 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
-
14 mai 2013 à 14:28
Hama' Messages postés 4 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 15 mai 2013 - 15 mai 2013 à 09:53
Hama' Messages postés 4 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 15 mai 2013 - 15 mai 2013 à 09:53
A voir également:
- Erreur à l'ouverture d'un .pdf avec l'API ShellExecute
- Erreur 0x80070643 - Accueil - Windows
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Comment faire un pdf - Guide
- Comment modifier un pdf - Guide
- Comment réduire la taille d'un pdf - Guide
2 réponses
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
14 mai 2013 à 20:35
14 mai 2013 à 20:35
Bonjour,
a mettre dans un module, pas dans le vba du formulaire (au passage petite erreur dans l'appel de ShellExecute, voir correction ci-dessous)
Option Explicit
#If Win64 Then 'La machine utilisée tourne en 64 bits
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
#Else
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
#End If
Public Function OuvrirShellExecute(strFichier, Chemin_fichier)
ShellExecute 0, "open", strFichier, vbNullString, Chemin_fichier, 1
End Function
dans formulaire:
Private Sub CmdOuv_Click()
Dim chemin, nom, prenom As String
nom = LCase(NomTextBox.Value) 'De même pour prenom
chemin = "C:\BLABLA\" & nom & "_" & prenom & ".pdf"
rep="C:\BLABLA\"
OuvrirShellExecute (chemin,rep)
End Sub
A+
a mettre dans un module, pas dans le vba du formulaire (au passage petite erreur dans l'appel de ShellExecute, voir correction ci-dessous)
Option Explicit
#If Win64 Then 'La machine utilisée tourne en 64 bits
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
#Else
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
#End If
Public Function OuvrirShellExecute(strFichier, Chemin_fichier)
ShellExecute 0, "open", strFichier, vbNullString, Chemin_fichier, 1
End Function
dans formulaire:
Private Sub CmdOuv_Click()
Dim chemin, nom, prenom As String
nom = LCase(NomTextBox.Value) 'De même pour prenom
chemin = "C:\BLABLA\" & nom & "_" & prenom & ".pdf"
rep="C:\BLABLA\"
OuvrirShellExecute (chemin,rep)
End Sub
A+
Hama'
Messages postés
4
Date d'inscription
mercredi 8 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
15 mai 2013 à 09:53
15 mai 2013 à 09:53
Merci beaucoup, ça fonctionne !
Pour ceux que ça intéresserait, petite erreur de recopie, pour les systèmes en 64 bits, il faut mettre :
Pour ceux que ça intéresserait, petite erreur de recopie, pour les systèmes en 64 bits, il faut mettre :
Declare PtrSafe Function ShellExecute ...blablablaEt pour appeler la fonction
OuvrirShellExecute chemin,rep