Copier une mise en page avec vba?

Fermé
Etudiant - 1 août 2013 à 14:16
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 - 1 août 2013 à 15:08
Bonjour,

j'aimerais faire un programme qui édite un nombre variable de pages (j'ai un corps de page fixe sur lequel il y a deux ou trois cases qui changent), mette des valeurs dedans pour pouvoir imprimer la totale facilement sur excel.

J'ai donc les informations sur le nombre de page que je veut imprimer dans une des feuilles du classeur, ainsi que les informations que je veut mettre ( condition avec les colonnes/lignes, rien de bien compliqué ici)

J'ai une feuille du classeur que je veut imprimer ( j'ai déjà créé le corps de page, qui a nécessité quelques manips )

l'objectif serait de copier cette Range que j'ai édité pour la mettre sur une autre feuille, mais AVEC les mises en page.

Si c'est difficilement faisable, j'utiliserai des mises en page( enfin, surtout des tailles de lignes/colonnes) dans la boucle de création des pages, mais je préfèrerais éviter si possible :p

Merci!
A voir également:

3 réponses

Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
1 août 2013 à 14:26
Bonjour,

C'est un peu confus, jeune Etudiant...
J'ai l'impression que le mieux est de faire une espèce de publi-postage. Donc soit tu crées ton modèle de fichier à imprimer sous Word et tu utilises les fonctionnalités de base, soit tu crées un modèle sous Excel que tu peux dupliquer pour l'alimenter avec ton onglet de données.

A+
0
Je duplique un modèle que j'ai créé sous excel avec un
Selection.copy
Range().Select
activesheet.paste


Mais comme ça, ça ne prends pas les informations tel que la taille des lignes ect...
Bref, j'ai pas modifié toute les lignes de la feuille, et étant donné que je copie directement en dessous j'ai déjà le format de colonne, je peut me permettre d'éditer la taille des lignes à la copie.

autre petit "problème" :p

Avant d'éditer le nombre de page voulue sur ma feuille excel, j'efface les précédentes (duh)
Le problème, c'est qu'en utilisant un
range().clear

j'ai l'impression que ça me génère des saut de page, et du coup à la fin j'arrive avec des lignes vides qui restent et prennent de la place dans la barre de défilement ( enfin, je suis pas sur du nom, mais le truc tout à droite qui permets de monter ou descendre dans le fichier ;) )

ya un moyen de faire ça joliement?
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
1 août 2013 à 15:08
Un onglet par formulaire à compléter, ce n'est pas plus simple ?
Et as-tu connaissance des données à renseigner dans ces formulaires ?

Si j'ai compris le besoin, je ferais :
- 1 formulaire vierge modèle dans un onglet ;
- les données variables dans un autre onglet ;
- une macro qui crée autant d'onglets que nécessaire en recopiant le formulaire vierge et place dans chaque onglet les infos adéquates.

Ne te base pas sur le code que tu as essayé , mais sur le besoin.
0