Enregistrer une feuille d'un classeur dans un autre

Résolu
philguejr Messages postés 8 Date d'inscription jeudi 25 novembre 2010 Statut Membre Dernière intervention 19 janvier 2011 - 7 déc. 2010 à 09:59
philguejr Messages postés 8 Date d'inscription jeudi 25 novembre 2010 Statut Membre Dernière intervention 19 janvier 2011 - 8 déc. 2010 à 09:04
Bonjour à toutes et tous,

Encore un petit problème à soumettre aux membres du forum :
J'aurai besoin d'enregistrer une feuille d'un classeur excel dans un autre classeur qui serait créer par la même occasion. Le tout via une macro en vba. J'ai bien trouvé quelque chose mais cela me renvoi une erreur code 1046 je crois.

Pourriez-vous m'aider svp ?

D'avance merci et bonne journée.

3 réponses

philguejr Messages postés 8 Date d'inscription jeudi 25 novembre 2010 Statut Membre Dernière intervention 19 janvier 2011
8 déc. 2010 à 09:04
merci beaucoup, j'essaie ce soir.
Il semblerait que c'est ce que voulais.

Bonne journée.
3
artgile Messages postés 61 Date d'inscription mercredi 20 janvier 2010 Statut Membre Dernière intervention 26 juin 2017
7 déc. 2010 à 20:10
Bonsoir,

Vite fait j'ai pas le temps pour le moment pour les explications.
A toute à l'heure peut-être....

Cordialement, JML

Sub Macro()
Cells.Select
Selection.Copy
Workbooks.Add
Cells.Select
ActiveSheet.Paste
Range("A1").Select
Windows("Classeur1").Activate
Application.CutCopyMode = False
Range("A1").Select
End Sub




"Ce que tu garde est perdu à jamais, ce que tu donne est à toi pour toujours " (E.E.Schmitt)
0
artgile Messages postés 61 Date d'inscription mercredi 20 janvier 2010 Statut Membre Dernière intervention 26 juin 2017
7 déc. 2010 à 21:39
Re-bonsoir

Voilà une voie de recherche, avec des commentaires cette fois ci (c'est plus digeste...) :

'=================== SOLUTION 1

Sub Poisson()
Cells.Select 'Sèlectionne la totalité de la feuille active du Classeur source
Selection.Copy 'Copie dans le presse papier le contenu de la feuille active
Workbooks.Add 'Crée un nouveau classeur nommé 'Classeur_N' , N étant le nombre de classeur actif +1
Cells.Select 'Sèlectionne la feuille active du nouveau classeur (ici la feuille 1)
ActiveSheet.Paste 'Colle le contenu de la feuille source dans la feuille active du nouveau classeur
Range("A1").Select 'Sèlectionne la cellule A1 afin de dessèlectionner la feuille du nouveau classeur
Windows("Classeur1").Activate 'Active le Classeur source
Application.CutCopyMode = False 'Désactive la copie de la feuile source
Range("A1").Select 'Sèlectionne la cellule A1
End Sub

'=================== SOLUTION 2
Option explicit

Dim Chemin As String
Dim NomClasseur As String
Dim NbClasseur As String

Sub Poisson()
Chemin = "C:\Users\HP\Desktop"
'----------------- IDEM solution 1
Cells.Select
Selection.Copy
Workbooks.Add
Cells.Select
ActiveSheet.Paste
Range("A1").Select
'------------------

NbClasseur = Workbooks.Count 'Compte le nombre de classeurs ouverts
NomClasseur = "UnNomApproprié" & NbClasseur & ".xls" 'Défini un nom de classeur
'Sauve le classeur aprés copie des données
ActiveWorkbook.SaveAs Filename:=Chemin & NomClasseur, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False

'----------------- IDEM solution 1
Windows("Classeur1").Activate
Application.CutCopyMode = False
Range("A1").Select
'-----------------

Windows(NomClasseur).Activate 'Active le classeur crée
End Sub



"Ce que tu garde est perdu à jamais, ce que tu donne est à toi pour toujours " (E.E.Schmitt)
0
Rejoignez-nous