A voir également:
- Exporter macro excel
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
8 réponses
eljojo_e
Messages postés
1155
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
14 octobre 2022
153
27 févr. 2013 à 16:09
27 févr. 2013 à 16:09
Bonjour,
Je te propose de faire un enregistrer sous, et soit de supprimer les deux onglet que tu veux pas soit de les cacher.
Comme ça tu conserve tout.
C'est bien ça que tu veux ?
Je te propose de faire un enregistrer sous, et soit de supprimer les deux onglet que tu veux pas soit de les cacher.
Comme ça tu conserve tout.
C'est bien ça que tu veux ?
f894009
Messages postés
17206
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 novembre 2024
1 711
28 févr. 2013 à 10:36
28 févr. 2013 à 10:36
Bonjour a vous deux,
Si une macro par feuille, copie dans un autre classeur suffi (en code VBA)
Si une seule macro dans un module, faire copie dans autre classeur et allez sur ce site pour un exemple de copie de macro dans un autre calsseur (le tout en VBA bien sur)
https://www.developpez.net/forums/d604294/logiciels/microsoft-office/excel/macros-vba-excel/copier-macro-vba-d-classeur/
A+
Si une macro par feuille, copie dans un autre classeur suffi (en code VBA)
Si une seule macro dans un module, faire copie dans autre classeur et allez sur ce site pour un exemple de copie de macro dans un autre calsseur (le tout en VBA bien sur)
https://www.developpez.net/forums/d604294/logiciels/microsoft-office/excel/macros-vba-excel/copier-macro-vba-d-classeur/
A+
f894009
Messages postés
17206
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 novembre 2024
1 711
1 mars 2013 à 09:14
1 mars 2013 à 09:14
Bonjour,
Oui, faire une macro pour copier un onglet dans un autre classeur. Avec l'enregistreur de macro, vous creer le corps du code et ensuite vous adaptez pour le nom du classeur cree.
A+
Oui, faire une macro pour copier un onglet dans un autre classeur. Avec l'enregistreur de macro, vous creer le corps du code et ensuite vous adaptez pour le nom du classeur cree.
A+
Bonjour
Voila une macro qui peur le faire
a toi de voir si ca te convient
Bien sur il faut faire un peux de menage
Sub ExportXLS()
Application.ScreenUpdating = False
'Crée une copie de la Feuil1 dans un nouveau classeur
Chemin = ActiveWorkbook.Path
NomFiche = F05.Range("B15")
ChemFiche = Chemin & "\" & NomFiche & ".xls"
Temp = F06.Name
On Error GoTo Erreur
F06.Copy
ActiveWorkbook.Activate
Sheets(Temp).Name = NomFiche
For Each Shap In ActiveSheet.Shapes
If Shap.Name <> "Logo2" And Shap.Name <> "Logo3" Then
Shap.Delete
End If
Next
ActiveWindow.FreezePanes = False
Rows("1:1").Delete
Range("A1").Select
'Sauvegarde la copie
ActiveWorkbook.SaveAs ChemFiche
'Ferme le classeur sauvegardé
ActiveWorkbook.Close True
Application.ScreenUpdating = True
MsgBox "Création dans " & ChemFiche
F04.Select
Exit Sub
Erreur:
Application.DisplayAlerts = False
ActiveWorkbook.Close
Err.Clear
Application.DisplayAlerts = True
F04.Select
'F05.Visible = 2
End Sub
A+
Voila une macro qui peur le faire
a toi de voir si ca te convient
Bien sur il faut faire un peux de menage
Sub ExportXLS()
Application.ScreenUpdating = False
'Crée une copie de la Feuil1 dans un nouveau classeur
Chemin = ActiveWorkbook.Path
NomFiche = F05.Range("B15")
ChemFiche = Chemin & "\" & NomFiche & ".xls"
Temp = F06.Name
On Error GoTo Erreur
F06.Copy
ActiveWorkbook.Activate
Sheets(Temp).Name = NomFiche
For Each Shap In ActiveSheet.Shapes
If Shap.Name <> "Logo2" And Shap.Name <> "Logo3" Then
Shap.Delete
End If
Next
ActiveWindow.FreezePanes = False
Rows("1:1").Delete
Range("A1").Select
'Sauvegarde la copie
ActiveWorkbook.SaveAs ChemFiche
'Ferme le classeur sauvegardé
ActiveWorkbook.Close True
Application.ScreenUpdating = True
MsgBox "Création dans " & ChemFiche
F04.Select
Exit Sub
Erreur:
Application.DisplayAlerts = False
ActiveWorkbook.Close
Err.Clear
Application.DisplayAlerts = True
F04.Select
'F05.Visible = 2
End Sub
A+
Re,
J'ai finalement fait comme eljojo_e l'a proposé. En effet, cette solution reste plus légère en terme de code, ainsi qu'en terme de manipulation de fichiers. De plus elle est plus rapide. C'est donc la meilleur solution à adapter :
- on supprime tous les onglets qui ne nous interessent pas dans une boucle
- on fait un "enregistrer sous"
- on ferme le classeur sans l'enregistrer
Ainsi, on garde le master tel quel et on obtient le résultat : la feuille enregistrée avec toutes les macros dans un fichier à part, sans avoir eu à manipuler une macro !
Encore merci eljojo_e pour cette solution, et merci à f894009 pour m'avoir proposé ta solution.
A+
J'ai finalement fait comme eljojo_e l'a proposé. En effet, cette solution reste plus légère en terme de code, ainsi qu'en terme de manipulation de fichiers. De plus elle est plus rapide. C'est donc la meilleur solution à adapter :
- on supprime tous les onglets qui ne nous interessent pas dans une boucle
- on fait un "enregistrer sous"
- on ferme le classeur sans l'enregistrer
Ainsi, on garde le master tel quel et on obtient le résultat : la feuille enregistrée avec toutes les macros dans un fichier à part, sans avoir eu à manipuler une macro !
Encore merci eljojo_e pour cette solution, et merci à f894009 pour m'avoir proposé ta solution.
A+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Oui c'est ca que je veux faire, mais j'aurais souhaité que l'utilisateur n'ai rien à faire. Mon classeur final va comporter une vingtaine de feuilles ! Je me vois mal dire à mon utilisateur "supprime les 19 feuilles dont tu n'as pas besoin". C'est pour cela que j'aurais souhaité n'exporter qu'une seule feuille avec le module1. Que ce soit via un menu d'excel ou une macro, peu m'importe !
Merci quand même pour ta réponse !
Oui c'est ca que je veux faire, mais j'aurais souhaité que l'utilisateur n'ai rien à faire. Mon classeur final va comporter une vingtaine de feuilles ! Je me vois mal dire à mon utilisateur "supprime les 19 feuilles dont tu n'as pas besoin". C'est pour cela que j'aurais souhaité n'exporter qu'une seule feuille avec le module1. Que ce soit via un menu d'excel ou une macro, peu m'importe !
Merci quand même pour ta réponse !
f894009
Messages postés
17206
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 novembre 2024
1 711
1 mars 2013 à 11:16
1 mars 2013 à 11:16
Re,
"Drag&Drop" de la feuille vers une autre instance d'Excel... Si dans la meme instance d'excel et c'est un move de l'onglet (couper/coller ou deplacer) dans le 2eme classeur qui doit etre ouvert. Ceci sans macro, par contre gerer la sauvegarde manuellement.
A vous de voir
macro: vous avez deux solutions qui vous ont ete proposees
sans macro: probleme de gestion sauvegarde
A+
"Drag&Drop" de la feuille vers une autre instance d'Excel... Si dans la meme instance d'excel et c'est un move de l'onglet (couper/coller ou deplacer) dans le 2eme classeur qui doit etre ouvert. Ceci sans macro, par contre gerer la sauvegarde manuellement.
A vous de voir
macro: vous avez deux solutions qui vous ont ete proposees
sans macro: probleme de gestion sauvegarde
A+
Après adaptation, cela fonctionne bien, mais ne copie pas les modules :( Sachant que c'est le coeur de mon fichier Excel...
Quelqu'un aurait il une idée ? est il possible d'adapter cette macro pour qu'elle copie aussi les modules ? ?
Quelqu'un aurait il une idée ? est il possible d'adapter cette macro pour qu'elle copie aussi les modules ? ?
f894009
Messages postés
17206
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 novembre 2024
1 711
1 mars 2013 à 13:54
1 mars 2013 à 13:54
Re,
Auriez-vous la memoire courte????? je vous ai postez un lien voir f894009 28 févr. 2013 à 10:36
A+
Auriez-vous la memoire courte????? je vous ai postez un lien voir f894009 28 févr. 2013 à 10:36
A+
Auriez-vous la memoire courte?????
Non je n'ai pas la mémoire courte!!!!!
C'est seulement qu'après avoir lu les deux liens, ce que j'observe c'est une exportation de fichiers de macros. J'en déduit donc qu'il faut les réimporter par la suite. Seulement je ne vois pas comment le faire via ma premiere feuille, car une fois la feuille copiée et les modules exportés, il faut bien les réimporter... C'est donc pour celà que je viens sur ce forum, en esperant trouver de l'aide à mon problème
f894009
Messages postés
17206
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 novembre 2024
1 711
Modifié par f894009 le 1/03/2013 à 16:08
Modifié par f894009 le 1/03/2013 à 16:08
Re,
exporter est en realite un copier/coller, pas un couper/coller
J'en déduit donc qu'il faut les réimporter par la suite Petite explication SVP
c'est une exportation de fichiers de macros Vous pouvez "exporter" la macro que vous voulez
exporter est en realite un copier/coller, pas un couper/coller
J'en déduit donc qu'il faut les réimporter par la suite Petite explication SVP
c'est une exportation de fichiers de macros Vous pouvez "exporter" la macro que vous voulez
eljojo_e
Messages postés
1155
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
14 octobre 2022
153
2 mars 2013 à 20:05
2 mars 2013 à 20:05
Lol je reste sur ma position, tu place un bouton par feuille, et chaque bouton supprime toute les feuilles (sauf celle où il y a le bouton) et tu fait un enregistrer sous <- qui se fait par macro.
f894009
Messages postés
17206
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 novembre 2024
1 711
2 mars 2013 à 20:17
2 mars 2013 à 20:17
Bonjour,
Oui,c'est une facon de faire, mais ce que je propose se fait aussi par du VBA, il suffit de savoir comment.
Bye
Oui,c'est une facon de faire, mais ce que je propose se fait aussi par du VBA, il suffit de savoir comment.
Bye