VBA Copier feuille vers le classeur choisi
Résolu
Slyy
Messages postés
12
Date d'inscription
Statut
Membre
Dernière intervention
-
Slyy Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
Slyy Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je cherche à archiver les données d'une feuille appelée "Etude" contenue dans un classeur "Reference" vers un des autres classeurs présents sur le bureau, dont le nom est défini par l'utilisateur (utilisation d'un inputbox). J'ai essayé ce code mais ca ne marche pas, je n'arrive pas à transferer les données vers le classeur demandé par l'utilisateur. Quelqu'un aurait-il une solution pour me débloquer?
Sub transfert()
Dim chemin as String
Dim fichier as String
Workbooks("Reference").Sheets("Etude").select
nom_classeur = InputBox ("Veuillez entrer le nom du classeur dans lequel vous voulez introduire la feuille?")
chemin = "C:\Documents and Settings\Bureau"
fichier = chemin & "\" & nom_classeur & ".xls"
Sheets("Etude").Copy After:=Workbooks (fichier).Sheets(1)
End Sub
Merci.
Slyy
Je cherche à archiver les données d'une feuille appelée "Etude" contenue dans un classeur "Reference" vers un des autres classeurs présents sur le bureau, dont le nom est défini par l'utilisateur (utilisation d'un inputbox). J'ai essayé ce code mais ca ne marche pas, je n'arrive pas à transferer les données vers le classeur demandé par l'utilisateur. Quelqu'un aurait-il une solution pour me débloquer?
Sub transfert()
Dim chemin as String
Dim fichier as String
Workbooks("Reference").Sheets("Etude").select
nom_classeur = InputBox ("Veuillez entrer le nom du classeur dans lequel vous voulez introduire la feuille?")
chemin = "C:\Documents and Settings\Bureau"
fichier = chemin & "\" & nom_classeur & ".xls"
Sheets("Etude").Copy After:=Workbooks (fichier).Sheets(1)
End Sub
Merci.
Slyy
A voir également:
- VBA Copier feuille vers le classeur choisi
- Comment copier une vidéo youtube - Guide
- Super copier - Télécharger - Gestion de fichiers
- Bruler feuille de laurier - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Feuille a5 - Guide
2 réponses
Salut,
Ta macro est bonne, le code exact. Cependant, ton classeur "destination" est, semble t'il, fermé au moment de la copie. Le plus simple serait de l'ouvrir et le refermer sitôt la copie effectuée :
En cadeau, pour remplacer ton InputBox (effectivement, celle ci sous entends que l'utilisateur est quelqu'un d'averti!!); une méthode pour ouvrir un fichier excel ou même pour en stocker le nom...
Ta macro est bonne, le code exact. Cependant, ton classeur "destination" est, semble t'il, fermé au moment de la copie. Le plus simple serait de l'ouvrir et le refermer sitôt la copie effectuée :
Sub transfert() Dim chemin as String Dim fichier as String nom_classeur = InputBox ("Veuillez entrer le nom du classeur dans lequel vous voulez introduire la feuille?") chemin = "C:\Documents and Settings\Bureau" fichier = chemin & "\" & nom_classeur & ".xls" Workbooks (fichier).Open Workbooks("Reference").Sheets("Etude").Activate Sheets("Etude").Copy After:=Workbooks (fichier).Sheets(1) Workbooks (fichier).Activate Workbooks (fichier).Save Workbooks (fichier).Close End Sub
En cadeau, pour remplacer ton InputBox (effectivement, celle ci sous entends que l'utilisateur est quelqu'un d'averti!!); une méthode pour ouvrir un fichier excel ou même pour en stocker le nom...
Sub ouvrir_fichier() GetOpenFileName: ChDir "C:\" CeFichier = Application.GetOpenFileName("xls Files (*.xls), *.xls") If VarType(CeFichier) = vbBoolean Then Exit Sub Else 'ouvre le classeur choisit Workbooks.Open Filename:=CeFichier, Origin:=xlWindows End If End Sub