Problème d'ouverture fichier

Résolu
Signaler
Messages postés
38
Date d'inscription
dimanche 20 août 2006
Statut
Membre
Dernière intervention
23 juillet 2007
-
Messages postés
38
Date d'inscription
dimanche 20 août 2006
Statut
Membre
Dernière intervention
23 juillet 2007
-
Salut,

sur une Form avec des boutons Option

Lorsque j'ouvre un document xls par le menu "Ouvrir" et que je retourne sur une autre option menu Ouvrir, il garde en mémoire le dernier trajet du document xls et il ne prend le chemin qu'il lui est attribué.


ci dessous les codes



Option Explicit<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>





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





Private Const SW_SHOWNORMAL As Long = 1





 





 





Private Sub Command2_Click()






  Form3.Show 1





End Sub





 





Private Sub Option1_Click()





 






 
Dim Ouvrir As String


 



  Ouvrir = "O:\Qualite2000\Contrôle Qualité\Non conforme\Bon de Retour.doc"


 



 
ShellExecute Me.hWnd, vbNullString, Ouvrir, vbNullString, "C:", SW_SHOWNORMAL





 





End Sub





 





 





Private Sub cmdQuitter_click()






  End





End Sub





 





Private Sub Command1_Click()






  Apropos.Show 1





End Sub





 





 





Private Sub Option10_Click()




Dim Ouvrir As String


 



  Ouvrir = "O:\Qualite2000\DCO\analyse DCO.xls"


 



 
ShellExecute Me.hWnd, vbNullString, Ouvrir, vbNullString, "C:", SW_SHOWNORMAL





 





End Sub





 





Private Sub Option11_Click()




Dim Ouvrir As String


 



  Ouvrir = "O:\Qualite2000\CENTILISATION\Centilisations 2006.xls"


 



 
ShellExecute Me.hWnd, vbNullString, Ouvrir, vbNullString, "C:", SW_SHOWNORMAL





 





End Sub





 





Private Sub Option12_Click()




Dim Ouvrir As String


 



  Ouvrir = "O:\Qualite2000\Suivi de l'échantillothèque\échantillons 2006.xls"


 



 
ShellExecute Me.hWnd, vbNullString, Ouvrir, vbNullString, "C:", SW_SHOWNORMAL





 





End Sub





 





Private Sub OuvreFichier()





CMD.FilterIndex = 1




CMD.InitDir = "O:\Qualite2000\Contrôle Qualité\Réclamations"



Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)





 





End Sub





Private Sub Option13_Click()





Call OuvreFichier





End Sub





 





Private Sub Option14_Click()





CMD.FilterIndex = 1





CMD.InitDir = "P:\Imprimés\IP"





Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)





 





End Sub





 





 





Private Sub Option15_Click()




CMD.FilterIndex = 1


CMD.InitDir = "P:\CR Réunion Qualité\CR Réunion Qualité 2006"



Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)





 





End Sub





 





 





Private Sub Option16_Click()




CMD.FilterIndex = 1


CMD.InitDir = "O:\Qualite2000\Contrôle Qualité\divers tableaux de bord\Tab Bord 2006"



Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)





 




End Sub


 


 



Private Sub Option17_Click()





CMD.FilterIndex = 1




CMD.InitDir = "O:\Qualite2000\Tablx de bord\Tableau bord 2006"



Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)





 





End Sub





 





 





Private Sub Option2_Click()





 






 
Dim Ouvrir As String


 



  Ouvrir = "O:\Qualite2000\Contrôle Qualité\Non conforme\NC nouveau tableau\Tableau Non Conforme 2006.xls"


 



 
ShellExecute Me.hWnd, vbNullString, Ouvrir, vbNullString, "C:", SW_SHOWNORMAL





 





 





End Sub





 





Private Sub Option3_Click()




Dim Ouvrir As String


 



  Ouvrir = "O:\Qualite2000\Contrôle Qualité\Contrôles Nettoyage\contrôle Nettoyage 2006+BILAN.xls"


 



 
ShellExecute Me.hWnd, vbNullString, Ouvrir, vbNullString, "C:", SW_SHOWNORMAL





 





End Sub





 





Private Sub Option5_Click()





 




Dim Ouvrir As String


 



  Ouvrir = "O:\Qualite2000\Contrôle Qualité\Suivi OF habillage\Suivi OF Hab 2006.xls"


 



 
ShellExecute Me.hWnd, vbNullString, Ouvrir, vbNullString, "C:", SW_SHOWNORMAL





 





End Sub





 





Private Sub Option6_Click()





 




Dim Ouvrir As String


 



  Ouvrir = "O:\Qualite2000\Contrôle Qualité\SUVI DEGORGEMENT\Suivi dégorgement 2006.xls"


 



 
ShellExecute Me.hWnd, vbNullString, Ouvrir, vbNullString, "C:", SW_SHOWNORMAL





 





End Sub





 





Private Sub Option7_Click()




CMD.FilterIndex = 1


CMD.InitDir = "O:\Qualite2000\Contrôle Qualité\Indicateurs\Indicateurs 2006"



Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)





 




End Sub


 



Private Sub Option8_Click()





CMD.FilterIndex = 1





CMD.InitDir = "P:\Modèles"





Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)





 





End Sub





 





Private Sub Option9_Click()





CMD.FilterIndex = 1





CMD.InitDir = "O:\Qualite2000\commande fax"





Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)





 





End Sub





 





Private Sub Ouvrir_Click()





CMD.FilterIndex = 1




CMD.InitDir = "O:\Qualite2000\Contrôle Qualité\Bilan PV\Bilan PV 2006"



Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)





 






 







End Sub





 






 








 







Private Sub Option4_Click()





 




Dim Ouvrir As String


 



  Ouvrir = "O:\Qualite2000\Contrôle Qualité\Suivi des tirages\suivi des tirages 2006.xls"


 



 
ShellExecute Me.hWnd, vbNullString, Ouvrir, vbNullString, "C:", SW_SHOWNORMAL





 






 






End Sub


 


 


 


merci de votre aide

coco

6 réponses

Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
73
essaye en vidant la propriété FileName ::

CMD.FileName = VbNullString

juste avant ton ShowOpen

Renfield
Admin CodeS-SourceS- MVP Visual Basic
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
19
Tu peux aussi essayer ce que disait Renfield en le mettant après la commande






Private Sub Ouvrir_Click()





CMD.FilterIndex = 1




CMD.InitDir = "O:\Qualite2000\Contrôle Qualité\Bilan PV\Bilan PV 2006"



Call CMD.ShowOpen





Call ShellExecute(Me.hWnd, vbNullString, CMD.FileName, "", vbNullString, 1)






CMD.Filename=vbNullString



 







End Sub









MPi
Messages postés
2237
Date d'inscription
lundi 29 mai 2006
Statut
Membre
Dernière intervention
29 mai 2008
11
Salut
ou si il y a : CMD.Rootfolder=False

 Drikce 06
Messages postés
38
Date d'inscription
dimanche 20 août 2006
Statut
Membre
Dernière intervention
23 juillet 2007

JE SUIS DESOLEE MAIS AUCUN DES 2 NE MARCHE

COCO
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
73
essaye en ajoutant cdlOFNNoChangeDir au Flags du commondialog


Const cdlOFNNoChangeDir = 8

    Membre de MSComDlg.FileOpenConstants

    Définit le répertoire en cours à celui qui était actif lors de l'ouverture de la boîte de dialogue.

Renfield
Admin CodeS-SourceS- MVP Visual Basic
Messages postés
38
Date d'inscription
dimanche 20 août 2006
Statut
Membre
Dernière intervention
23 juillet 2007

salut,

merci de m'avoir aidé à résoudre ce problème
mais j'en ai encore un autre
lorsque j'appuie une option click et que mon fichier j'ouvre normalement
je ne peux pas cliquer une 2eme fois sur cette option qui ne réagit pas au clic
donc je ne peux pas cliquer 2 fois la même option

merci

coco