Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
959 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Fermer un des fichiers ouverts

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fermer un des fichiers ouverts

n°2284849
chamikin
Posté le 07-07-2016 à 16:13:47  profilanswer
 

Bonjour,
 
Je débute avec VBA et je suis bloqué par un pb  que m’empêche de continuer.
J'ai crée un macro dans un fichier Maître, qui, entre autre, doit ouvrir un autre Fichier (Guest) , copier de ce fichier un onglet (créer cet onglet dans le fichier Maître), puis fermer le fichier Guest.
 
Pour ouvrir le fichier Guest je renseigne dans le macro le racine de Path en dure, puis je laisse l'utilisateur de sélectionner le fichier dans sous-repertoire affiché. Je stock le nom du fichier dans une variable.
 
Après la copie de l'onglet j'essaie de fermer le fichier Guest en bloquant le message de sauvegarde, mais le VBA me sort le message d'erreur "9" (l'indice n'appartient pas à la sélection). J'ai regardé tous les posts des forums et je n'ai pas trouvé comment éviter cette erreur. Est-ce que qqn peut m'aider sur ce sujet?
 
Je profite pour poser deux questions sous-jacentes:
- est-il possible de bloquer pop-up proposant la mise à jour des liens dans le fichier à ouvrir avec un autre fichier?
- comment on peut traiter le choix "Abandon", si l'utilisateur ne sélectionne pas le fichier à ouvrir?
 
Voici le code de ma macro:
Sub s_Proc_OpenFile()
' Proc_FichierOuvrir Macro
      Dim Var_Fichier As String
'   Chemain d'acces au fichier à traiter
      ChDir "C:\Utilisateurs\...\a_Countries Input"
      Var_Fichier = Application.GetOpenFilename("Guest (*.xls*),*.xls*", , _
"Sélectionnez un seule fichier", , False)
'Annule toutes les alertes Excel
      Application.DisplayAlerts = False
'Open the Country file
      Workbooks.Open Var_Fichier
'Restaure l'affichage des Alertes
      Application.DisplayAlerts = True
     
'Copy the Subcos tab from Country file to the Global file
      Sheets("Sub" ).Select
      ActiveSheet.Copy Before:=Workbooks("Master.xlsm" ). Sheets(1)
'  Close Country File
      Workbooks(Var_Fichier).Close SaveChanges:=False
End Sub
 
Merci d'avance pour votre aide.
 

mood
Publicité
Posté le 07-07-2016 à 16:13:47  profilanswer
 

n°2284858
Chelmi18
Posté le 07-07-2016 à 18:31:25  profilanswer
 

Salut,
 
Je te conseille cette excellente lecture : http://www.commentcamarche.net/faq [...] seur-ferme
 
Ainsi, en n'ouvrant pas ton fichier Guest, tu t'affranchis de pas mal de galères. Si tu ne fais que de la consultation, autant le lire fermé !

n°2284859
chamikin
Posté le 07-07-2016 à 18:55:57  profilanswer
 

En effet, ça peut être une solution.
Je vais essayer de l'appliquer.
Merci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Fermer un des fichiers ouverts

 

Sujets relatifs
Interaction fichiers locauxFermer et Ouvrir le Même fichier sans Souris
Fonction(s) pour récupérer chemins + titres de fichiers d'un dossierconvertir des fichiers lst en pdf
Importer des données de plusieurs fichiers, sous conditionouverture de fichiers
VBA : manipuler des fichiers dont le nom a des caractères spéciauxPetit coup de pouce pour renommer des fichiers
fusion des fichiers en 1 fichier 
Plus de sujets relatifs à : Fermer un des fichiers ouverts


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR