Problème d'ouverture de fichiers à partir de mon VBA
mike56edwards
Messages postés7Date d'inscriptionjeudi 29 janvier 2009StatutMembreDernière intervention10 février 2009
-
7 févr. 2009 à 18:46
mike56edwards
Messages postés7Date d'inscriptionjeudi 29 janvier 2009StatutMembreDernière intervention10 février 2009
-
10 févr. 2009 à 21:29
Bonjour à tous,
Je travaille sur un projet pour mes études. Sur certains de mes userform, j'ai des commandbutton qui permettent d'ouvrir un dossier dans l'explorateur grâce au code suivant :
Shell "C:\WINDOWS\EXPLORER.EXE /n,/e,C:\Documents and Settings\Michael Edwards\Mes documents\Informatique\Projet gestion de docs\Sauvegardes Bons de commande", vbNormalFocus
Donc le dossier s'ouve bien dans l'explorateur, seulement lorsque je double clique sur un des fichiers il ne se passe rien. J'ai essayé de faire en ouvrant la boîte de dialogue "ouvrir avec" mais c'est toujours le même problème. Mon VBA ne plante pas, tout semble normal, pas de message d'erreur, mais le fichier ne s'ouvre pas.
Merci de m'aider, s'il vous plait, je cherche depuis plus d'une semaine sans succès. Je précise, je ne sais pas si ça a quelque-chose à voir, j'ai choisi de garder excel visible lorsque mon VBA tourne, c'est-à-dire que pour chaque commande, j'ai "Application.visible=True".
Michael Edwards
Icam Bretagne
France
A voir également:
Problème d'ouverture de fichiers à partir de mon VBA
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
StartProcess(
ByVal
sFile
As String
,
Optional ByVal
sParameters
As String
= vbNullString)
ShellExecute 0&, "open", sFile, sParameters, vbNullString, 1&
End Sub
'
'
'
=====
' EXEMPLE
'
=====
'
Private Sub Form_Load()
StartProcess "C:\mon_image.jpg" '<- ouvre l'image
avec ACDSEE par exemple
StartProcess "N:\Mon
dossier" '<- ouvre l'explorateur à cette
arborescence
StartProcess "D:\fichier.pdf" '<- ouvre le
fichier avec Acrobat Reader
StartProcess "C:\Client.exe" '<- lance le
programme
End Sub
<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
mike56edwards
Messages postés7Date d'inscriptionjeudi 29 janvier 2009StatutMembreDernière intervention10 février 2009 9 févr. 2009 à 20:30
Bonjour,
Merci pour votre réponse, désolé de ne répondre que maintenant.
En fait, j'arrive à ouvrir le dossier, mais le problème vient du fait que je clique sur un des fichiers dans le dossier pour l'ouvrir, et il ne se passe rien. Si je ferme mon vba et que je clique sur le fichier, celui-ci s'ouvre. Mas je voudrais pouvoir l'ouvrir à partir de mon vba.
mike56edwards
Messages postés7Date d'inscriptionjeudi 29 janvier 2009StatutMembreDernière intervention10 février 2009 10 févr. 2009 à 11:01
Bonjour,
Oui même avec ce nouveau code, il m'ouvre le dossier voulu, mais je n'arrive pas à ouvrir le fichier. Je ne met pas de fichier spécifique, car c'est un dossier de sauvegardes, et je voudrais laisser le choix du fichier à l'utlisateur.
Merci
Michael Edwards
Icam Bretagne
France
Vous n’avez pas trouvé la réponse que vous recherchez ?
PCPT
Messages postés13278Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201848 10 févr. 2009 à 21:09
... le choix de quoi, tu as besoin de récupérer sa sélection?
lui donner accès à son répertoire ne te renvoie pas de résultat
c'est de çà que tu parlais en disant qu'il ne pouvait rien sélectionné? le fait que ton code ne sait pas ce qu'il fait dans la fenêtre?
voir dans ce cas sur codyx.org avec "browse" (dossier) ou "dialog" (fichier)
<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
mike56edwards
Messages postés7Date d'inscriptionjeudi 29 janvier 2009StatutMembreDernière intervention10 février 2009 10 févr. 2009 à 21:29
Enfaite la commande c'est l'ouverture d'un dossier où des sauvegardes sont placées.
Le VBA doit ouvrir le dossier spécifié par la commande, et non l'uilisateur. Par contre l'uilisateur doit pouvoir choisir un des fichiers à l'intérieur du dossier pour l'ouvrir. Le dossier a plusieurs sauvegardes à l'intérieur. Tous les fichiers s'ouvrent avec excel. Le chemin d'accès ne change jamais.
J'arrive à faire en sorte à ce que le dossier apparaisse, les fichiers sont présents, mais lorsque je clique sur un des fichiers pour l'ouvrir, il ne se passe rien. Ni le fichier, ni excel ne s'ouvre (même si excel est déjà ouvert pour le vba)
Merci pour votre aide, j'ai essayé d'expliquer le plus clairement possible. Je vais aller voir ce que vous m'avez dit.