Impression des tableaux sur une seule page par macro

bonjour,

j'ai fait une macro pour imprimer des tableaux qui se répète pour chaque employé en entrant le code employé de 1 à 50 par exemple,

sur une page j'imprime deux tableaux (un dans la moitié supérieure et l'autre dans la moitié inférieur de la page) sachant que l'ordre est important. alors j'imprime comme suit:

1 et 2 sur la première page

3 et 4 sur la 2eme

5 et 6 sur la 3eme

...etc

le problème c'est que après l'impression je dois couper les pages en deux et dans ce cas je dois les trier à nouveau pour les mettre en ordre. ce qui est un travail fastidieux.

alors j'ai trouvé une solution pour garder l'ordre après que je coupe les pages mais je ne sais pas comment la réaliser par macro.

l'idée est de récupérer le dernier code employé par exemple 703 et le diviser par 2 (division entière) donc 351 et je j'imprime sur la première page les employés comme suit:

1ere page: 1 et 351

2eme page 2 et 352

3eme page 3 et 353

Dernier 350 et 702

et le 703 je l'imprime seul.

Vous trouvez ci-joint un fichier qui montre le principe.

les données des tableaux sont récupéré d'un autre fichier que j'ouvre à travers une boite de dialogue en utilisant vlookup.

SVP pourriez m’aider à réaliser cette idée.

64two-per-page.zip (15.28 Ko)

Bonjour Compte abdou le forum

tu pourrais juste préciser dans tes postes que tu fais du multi postage sur d'autre Forum, juste par correction

tu préfères la réponse ici ou sur développez????

a+

papou

Bonsoir

Je ne vois pas en quoi le multi-postage pose un problème. On peut même voir en cela un challenge à relever.

Si on se rend compte qu'il y a multi-postage, c'est que soi même on va "voir ailleurs" (même si c'est pour donner une réponse).

Si le multi-postage dérange quelqu'un, que cette personne réponde sur le forum qui lui plait mais qu'il ne poste pas ici pour "se plaindre".

Allez ! Sur XLP on aime la compétition !

Amicalement

Nad

Bonjour les amis et Merci pour vos réponses,

je partage l'avis de Nad,

et pour la réponse, que ce soit ici ou ailleurs, ça m'est égal et j'ai posté le message sur dévelopez mais j'ai pas eu une réponse alors j'ai décidé de le poster ici peut être il y aura des personnes libres pour me répondre, et à la fin l'essentiel qu'on apprends et on partage l'information.

Merci.

Bonjour Nad,

Tu n'as pas du bien lire mon post, je ne critique pas, non non mais je dis :

tu pourrais juste préciser dans tes posts que tu fais du multi postage

c'est ce que l'on appelle de la correction vis à vis des gens qui répondent.

a+

papou

Bonjour,

Peut-etre en employant une boucle for next et un indice de boucle
for début = 1 to 750/2
for numFiche = Début to 750 step 750/2
impression fiche
next  numfiche
next début

Mais bon , c'est une idée car tu ne nous dits pas grand chose sur la manière dont tu récupéres les infos dans ta base.

Donc juste une écriture un peu bateau à adapter à ton cas.

Bonjour Misterno,

Merci pour la réponse, et j'ai mis un fichier joint pour ainsi que le code vb pour clarifier l'idée.

J'espère que vous avez compris le problème.

Merci.

Bonjour

Regardes si cela va dans le sens que tu veux

Dans l'archive le fichier Base pour mes tests

48compteabdou.zip (27.18 Ko)

Bonjour Banzai64,

je te remercie pour ta réponse, et c'est exactement je que je voulais faire,

juste un petit souci, est que les valeurs recherchées par VLOOKUP ne sont pas ordonnés séquentiellement puisque se sont des codes employés et on peut trouver par exemple:

1

2

3

5

9

13

15

....etc

je sais qu'il faut juste faire un test pour vérifier l’existence de la valeur recherchée dans la colonne A, si elle existe on imprime sinon on passe, mais franchement avec le code que tu m'a envoyé, je le trouve un peu compliqué et je ne sais pas ou mettre le test.

Merci beaucoup et j’attends ta réponse.

Bonjour

Une question

Si tu veux de l'employé 1 à l'employé 20 est-ce que tous les employés sont dans la base ? (dans l'ordre ou pas c'est sans importance)

Dans le cas ou il ne sont pas tous

compteabdou a écrit :

juste un petit souci

va devenir un grand problème

A te lire

Bonjour,

Justement si par exemple je veux les employés de 1 à 20, ça arrive qu'ils ne sont pas tous dans la colonne, puisque il y a des employés qui quittent alors on les supprime.

et j'ai déjà réglé ce problème en faisant un simple test, si la valeur recherchée existe j'imprime sinon je passe. mais comme je t'ai dit, avec ton code que je trouve super, c'est compliqué.

avant j'ai utilisé les deux cellules J1 et J2 comme valeur recherchée pour vlookup. J1 pour récupérer les données du tableau en haut et J2 pour récupérer les données du tableau en bas.

Merci Banzai64.

Bonjour

compteabdou a écrit :

j'ai déjà réglé ce problème

Où ça ?

Si tu n'imprime qu'un seul tableau aucun souci, l'employé existe on imprime, il n'existe pas on passe au suivant

Mais dans ton cas tu veux imprimer deux tableaux à la fois

1) Les deux employés existe pas de souci

2) un employé que tu veux imprimer n'existe pas mais l'autre existe : Que fait-on ?

on imprime une page avec une moitié vide ?

3) Si les deux n'existent pas on n'imprime pas une page vierge

A suivre

Bonjour,

Une bonne analyse Banzai64,

la colonne A contient les codes employés,

alors juste après la boucle (ma version qui se trouve dans module2) je test:

If num = file.Worksheets("feuille").Range("A" & i).Value Then

je met la valeur dans J1 ou J2

et j'imprime

sinon

next indice

- Pour le cas où un employé existe et l'autre non: je passe au suivant qui existe en passant celui qui n'existe pas.

c'est ça le principe mais je ne sais pas comment l'appliquer sur ton nouveau code.

Merci

Bonsoir

A voir si c'est mieux, je suis long à comprendre

Bonjour Banzai64,

je pense pas que tu es long à comprendre vu que tu as trouvé la solution.

je te remercie pour ton aide et c'est exactement ce que je voulais faire.

Merci beaucoup Banzai64.

A bientôt.

-- 13 Juin 2011, 09:21 --

Re Bonjour,

juste une question,

comment ta pu analyser le problème et le réaliser avec macro,

cela revient à l'expérience ou à la maitrise du langage.

franchement pour moi je n'arrive pas à faire une macro pareille.

J'espère que les forums ne sont pas juste pour donner le poisson aux autres mais aussi pour leur apprendre comment ils deviennent des pécheurs.

Merci.

Rechercher des sujets similaires à "impression tableaux seule page macro"