Commande pour fermer un fichier

  • Initiateur de la discussion Initiateur de la discussion fredtu
  • 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 !

fredtu

XLDnaute Junior
Bonjour à tous,

Je vous expose mon problème.
Dans mon classeur actif, je dois récupérer les données d'une feuille d'un autre fichier dont le nom changera tous les jours. Une fois que la copie est effectuée, je souhaite que le fichier dont les données ont été extraites se ferment automatiquement.
J'ai écrit le code suivant :

Code:
Sub CommandButton1_Click()

Choix_de_la_date

Workbooks.Open "C:\Users\Frédérick\Desktop\" & Feuil2.Range("A1").Value & ".xls"

Cells.Select
    Selection.Copy
    Windows("Classeur1.xlsm").Activate
    Cells.Select
    ActiveSheet.Paste

Workbooks("C:\Users\Frédérick\Desktop\" & Feuil2.Range("A1").Value & ".xls").Activate
Workbooks("C:\Users\Frédérick\Desktop\" & Feuil2.Range("A1").Value & ".xls").Close


End Sub

Mais il me renvoie une erreur et je ne trouve pas la solution.
Pouvez-vous m'aider ?

Merci d'avance.
 
Dernière édition:
Re : Commande pour fermer un fichier

re fredtu le forum
si le fichier est ouvert teste cela
a+
Papou😱

Code:
Sub CommandButton1_Click()
    Dim wbks As Workbook
    Set wbks = Workbooks.Open("C:\Users\Frédérick\Desktop\" & Feuil2.Range("A1").Value & ".xls")
    wbks.ActiveSheet.Cells.Copy Windows("Classeur1.xlsm").ActiveSheet.Cells
    wbks.Close 0
End Sub
 
Re : Commande pour fermer un fichier

En complément, est-il possible d'intégrer un message d'erreur lorsque le fichier recherché dont le nom est défini par la valeur de la cellule A1de la feuille 2 n'existe pas ?

Je patage dans la rédaction...
 
Re : Commande pour fermer un fichier

Re Fredtu le forum, bonjour Michel😱 je t'ai zappé excuse moi
a+
Papou😱
Code:
Sub CommandButton1_Click()
    Dim wbks As Workbook, nom$
    nom = "C:\Users\Frédérick\Desktop\" & Feuil2.Range("A1").Value & ".xls"
    If Dir(nom, vbDirectory) = "" Then MsgBox "Le fichier que vous essayez d'ouvrir n'existe pas", , "Fichier Inexistant": Exit Sub
    Set wbks = Workbooks.Open(nom)
    wbks.ActiveSheet.Cells.Copy Windows("Classeur1.xlsm").ActiveSheet.Cells
    wbks.Close 0
End Sub
 
Dernière édition:
- 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
  • Question Question
Réponses
2
Affichages
988
Rousseau Benoit
R
Retour