Enregistrement d'une feuille dans un nouveau classeur
Bonjour,
J'ai préparé un classeur excel et je suis enfin venu a bout de mes différentes formules
Mais maintenant il me faut utiliser une macro et la pfiouuuu, j'ai grand besoin d'aide.
Je souhaiterai via un bouton intégrant une macro, enregistrer la feuille de mon classeur dans un nouveau qui s'enregistrera a la même place que le premier. Je précise que le fichier "mère" a des chances d'être déplacé selon les besoins et l'emplacement d'enregistrement devra ce faire en conséquence.
- J'ai besoin lors de l'enregistrement de cette nouvelle feuille dans un nouveau classeur de reprendre :
- La hauteur de mes lignes
- La largeur de mes colonnes
- L'image qu'elle contient
- La valeur de mes cellules générer par des formules et non pas les formules en elle même
- Les différentes mise en forme (même conditionnelle)
- Et si possible mais pas indispensable la même mise en page notamment les sauts de page.
Le nom du nouveau classeur devra reprendre la valeur de la cellule A5 de la feuille enregistrer (cellule renommer actuellement "NumTest") et la totalité des cellules de la feuille devront être verrouillées sauf A13:A50 et A65:A70.
Puis la feuille verrouillée par un code.
Info complémentaire :
Je remercie par avance celles et ceux qui voudront bien m'aider a finaliser mon projet.
Bonne soirée.
DieZe.
Bonsoir,
Copier la feuille. Dans un premier temps dans le classeur. Supprimer les formules (par affectation des valeurs sur l'ensemble de la feuille). Déplacer la copie dans un nouveau classeur. Epurer s'il y a lieu des liens avec le classeur source (noms par exemple). Enregistrer le nouveau classeur dans le même dossier que le classeur source.
Cordialement.
Bonjour Jean-Eric,
Tout d'abord un grand merci pour le temps et le savoir que vous avez bien voulu partager avec moi.
j'ai testé sur mon fichier et c'est plus qu'un début de réponse.
- Sauf erreur de ma part il manque une seule chose
- La hauteur des lignes qui n'est pas reproduite dans le nouveau fichier.....
et la mise en page (Sauts de ligne qui ne sont pas conservés) mais vraiment pas indispensable comme je l'ai précisé dans mon premier message.
En me reposant sur votre code j'ai essayé pour les hauteurs de ligne :.Cells(1).PasteSpecial xlPasteRowHeights
Mais j'ai droit a un beau message "Erreur de compilation : "Variable non définie"
Donc si vous avez une solution pour cela je suis preneur. - Je ne l'avais pas précisé mais mes cellules verrouillées ne sont pas sélectionnables.
C'est a mon sens moins frustrant pour l'utilisateur.
Pouvoir sélectionner la cellule mais pas la modifier avec un message d'interdiction en rappel, c'est un peu comme avoir le droite de rentrer dans une boulangerie, mais ce faire rappeler a l'ordre par sa mère si on ose toucher au bonbons.
Donc idem si cela est facilement intégrable au code je suis preneur.
Merci encore et bon dimanche.
Bonjour MFerrand,
Merci pour vos explications, mais le faire manuellement n'est pas une difficulté pour moi, l'automatiser par contre en était une.
Désolé si je n'ai pas été assez explicite sur mes besoins.
Cordialement.
Merci pour vos explications, mais le faire manuellement n'est pas une difficulté pour moi, l'automatiser par contre en était une.
Désolé si je n'ai pas été assez explicite sur mes besoins.
Je n'ai fait que lister (en gros) les opérations à programmer, selon la méthode me paraissant la plus économique (un tant soit peu différente du modèle proposé par Jean-Eric [ que je salue ! ]
Je ne vais jamais plus loin tant que le demandeur ne fournit pas un classeur modèle permettant d'évaluer les particularités, préciser chaque opération, tester des alternatives éventuelles en situation... et tout simplement constituant le support pour écrire le code.
Cordialement.