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.