ouvrir / fermer fichier

  • Initiateur de la discussion Initiateur de la discussion dran_200
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

dran_200

XLDnaute Occasionnel
Bonjour,

J'ai un soucis avec une macro pour ouvrir / fermer excel.
Dans un 1er fichier excel ce trouve cette macro pour ouvrir le classeur "BD" dans le dossier "Base" et fermer le 1er classeur "Bloc":

Private Sub aller_BD_Click()

Workbooks.Open Filename:=(ActiveWorkbook.Path & "\Base\BD.xls")

ThisWorkbook.Close

End Sub

Je voudrais mettre une macro dans le classeur "BD" pour pouvoir revenir en arrière sur le 1er fichier "Bloc", sachant que le fichier "BD" se trouve dans un sous dossier.
Comment faire ??

merci pour votre aide
 
Re : ouvrir / fermer fichier

Bonjour,

pas tout compris, mais peut être en spécifiant le chemin complet...

Code:
    Workbooks.Open "C:\MesDocs\Excel\Test\bloc.xls"

sinon il faut des critères permettant de le déterminer...

bonne journée
@+
 
Re : ouvrir / fermer fichier

Bonjour

Si le besoin est de récupérer le ou les dossier parents à BD.xls :
voici l'une des méthodes :

Code:
dossierParent = CreateObject("Scripting.FileSystemObject").getfolder(ActiveWorkbook.Path).parentfolder.Path

Pour le dossier parent de ce dernier : rajouter parentfolder

Code:
dossierParent = CreateObject("Scripting.FileSystemObject").getfolder(ActiveWorkbook.Path).parentfolder.parentfolder.Path


Est-ce ce qu'il vous manquait ?

cdt
Olivier

EDIT Salut Pierrot
 
Re : ouvrir / fermer fichier

Re Bonjour,

Mon probleme est :
Dans un dossier qui est amené à etre déplacé, j'ai le classeur "Bloc" et le dossier "Base" dans lequel se trouve le classeur "BD".
Pour aller du classeur "Bloc" vers "BD" la macro fonctionne bien. Mon probleme est pour revenir depuis le classeur "Bd" vers "Bloc".
Merci
 
Re : ouvrir / fermer fichier

Re, bonjour Olivier

As tu testé la solution proposé par Olivier ? Une autre approche pour éviter l'utilisation de la fonction "createobject", en supposant que j'ai bien compris, pas sûr... :

Code:
Dim monclasseur As Workbook
Set monclasseur = Workbooks.Open("C:\MesDocs\Excel\Test\classeur1.xls")
MsgBox Mid(monclasseur.Path, 1, InStrRev(monclasseur.Path, "\")) & "AutreClasseur.xls"

Nom des dossiers /sous dossiers et classeurs à adapter...

bon après midi
@+
 
Re : ouvrir / fermer fichier

re
mon probleme est que je ne veux pas mettre de chemin du style : C:\MesDocs\Excel\Test\classeur1.xls, car le dossier est amené à etre déplacé. Je voudrais un chemin du style : "ActiveWorkbook.Path & "\Base\BD.xls" qui fonctionne bien pour aller dans le sous dossier "bas", classeur"BD". je voudrais le chemin inverse ?
 
Re : ouvrir / fermer fichier

re
Comment je l'inclus dans ma macro ? je débute

Prrivate Sub CommandButton6_Click()

dossierParent = CreateObject("Scripting.FileSystemObject").getfolder(ActiveWorkbook.Path).parentfolder.parentfolder.Path

Workbooks.Open Filename:=("Lancement.xls")

ThisWorkbook.Close

End Sub

Ca ne fonctionne pas ?
 
Re : ouvrir / fermer fichier

re
ça fonctionne, mais il reste un probleme.
j'ouvre le premier classeur avec ce code dans le woorbook pour ouvrir l'userform et masquer excel :

Private Sub Workbook_Open()
Application.Visible = False
UserForm1.Show
End Sub

ensuite j'ai mis ce code pour fermer mon premier classeur + userform et ouvrir mon autre classeur :

Private Sub aller_ceinture_Click()
Workbooks.Open Filename:=(ActiveWorkbook.Path & "\BD\Ceinture.xls")
ThisWorkbook.Close
End Sub

ça fonctionne, ça ouvre mon autre classeur, mais ça ne ferme pas le premier ?

Ensuite j'ouvre le deuxième classeur avec ce code dans le woorbook pour ouvrir l'userform et masquer excel :

Private Sub Workbook_Open()
Application.Visible = False
UserForm3.Show
End Sub

ensuite j'ai mis ce code pour fermer mon deuxième classeur + userform et reouvrir mon premier classeur :

Private Sub CommandButton6_Click()
dossierparent = CreateObject("Scripting.FileSystemObject").getfolder(ActiveWorkbook.Path).parentfolder.parentfolder.Path
Workbooks.Open Filename:=(dossierparent & "enregistrement\Lancement.xls")
Thisworbooks.Close
End Sub

ça ne fonctionne pas, ça ferme tout ?

quelqu'un peut m'aider ??
merci
 
Re : ouvrir / fermer fichier

Re

Attention comme tu charges un usf à l'ouverture du 2ème classeur..... faudrait voir le code dans l'usf.... Si tu débutes je t'engagerais plutôt à procéder plus simplement.... Mais bon comme je n'ai toujours pas trop compris ce que tu veux faire exactement....

bonne journée
@+
 
Re : ouvrir / fermer fichier

re

Ce que je voudrais faire c'est :
j'ai un classeur excel et un dossier. Dans ce dossier se trouve d'autres classeurs excel et un autre dossier avec des photos.
je lance mon application par le premier classeur excel. A l'ouverture s'ouvre un userform avec different bouton pour aller sur les autres classeurs qui se trouve dans le dossier, et je masque excel. Je clique sur un bouton et la je veux fermer mon 1er classeur et ouvrir un autre classeur excel ( un userform s'ouvre) toujours avec excel masqué. et je veux aussi pouvoir revenir sur mon 1er classeur avec un autre bouton.
j'espere avoir pu t'expliquer !!!

merci pour votre aide
 
Re : ouvrir / fermer fichier

re
Mon premier fichier me sert en quelque sorte de sommaire.
Je ne peux pas mettre les autres fichier en un seul, car mon appli va etre dupliquer et suivant les personnes, elle n'ont pas acces au même chose. Et chaque autres fichier et lié avec environs 200 photos ( j'ai 7 fichiers).
 
Re : ouvrir / fermer fichier

Bonjour,

ton 1er classeur sera fermé après que l'usf soit déchargé, essaye en mettant le code de fermeture du 1er classeur lors de l'initialisation de l'usf ou dans l'événement "open" du 2ème classeur, mais attention peut être tester que le fichier soit bien ouvert avant... A voir....

bonne journée
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
43
Affichages
788
Retour