Extraction par VBA

criscris11

XLDnaute Accro
Bonjour chers amis, le forum,
Il y a quelques temps, avec Monique, on avait planché sur un fichier mais impossible de le finaliser (pourtant on connaît tous Monique et ses formules magiques). La semaine dernière, on a revu un peu les choses et grâce à elle, j'ai pu améliorer la praticité du fichier afin que l'extraction qui reste à faire soit la moins galère possible pour nos chers VBéistes.
Voir les détails dans le fichier-joint.
Si besoin de renseignements supplémentaires, vous pouvez me contactez sans problème soit sur le forum soit en MP ou par e-mail si nécessaire.
Le code doit être compatible avec Excel 97.
Vous remierciant par avance, je vous souhaite à tous un bon après-midi.
Bien amicalement.
 

Pièces jointes

  • Extraction CSCMS (VBA).zip
    51.1 KB · Affichages: 87
Dernière édition:

Cousinhub

XLDnaute Barbatruc
Re : Extraction par VBA

Bonjour,
regarde le fichier joint, et dis si cela te convient.
Pour info, plutôt que de sauter de plage en plage, je supprimes tes plages coloriées en début de macro, et refais toute la mise en forme en fin d'extraction.
 

Pièces jointes

  • Extraction CSCMS (VBA)v1.zip
    54.4 KB · Affichages: 54

criscris11

XLDnaute Accro
Re : Extraction par VBA

Re,
Comme Monique me l'a fait comprendre en MP : pas facile à comprendre du premier coup alors n'hésitez-pas à poser les questions qui vous sembleraient nécessaires à l'élaboration du code.
Quelques précisions toutefois : environ entre 140 et 150 lignes dans le fichier et une ligne par nom donc pas de doublon en colonne A (enfin jusqu'à maintenant mais le jour où j'aurais 2 DUPONT Georges dans le même régiment et dans la même unité je vous le ferais savoir.
Merci d'avance.
 

criscris11

XLDnaute Accro
Re : Extraction par VBA

Bonjour bhbh,
Tout d'abord merci de t'être penché sur mon cas.
Verrais-tu des modifications à apporter par rapport à mon message de 16h38 ?
Aurais-tu encore un peu de temps pour commenter ton code : cela serait vraiment sympa de ta part ?
Je dois bientôt partir de la maison mais je testerai tou cà ce soir plus en détail mais aux premiers abords cela semble convenir assez bien ma foi.
Merci d'avance et à bientôt.
 

Cousinhub

XLDnaute Barbatruc
Re : Extraction par VBA

Re-,
par rapport à la modif, j'ai modifié le code (avant on ne traitait que les lignes 3 à 9). Maintenant, on traite les lignes 3 à fin de tableau
Cependant, pour la mise en forme, si tu as d'autres tableaux de récap dans l'onglet CSCMS, il va falloir adapter..
 

Pièces jointes

  • Extraction CSCMS (VBA)v2.zip
    55.7 KB · Affichages: 55

criscris11

XLDnaute Accro
Re : Extraction par VBA

Re,
Merci pour la correction. Je m'en vais et je regarderai ton nouveau fichier à mon retour. Concernant la mise en forme j'ai une idée mais je t'en reparlerai ce soir si tu veux bien.
Encore un grand merci et à tout à l'heure.
Bonne fin d'après-midi.
 

criscris11

XLDnaute Accro
Re : Extraction par VBA

Bonsoir bhbh,
Je n'ai pas encore effectué les tests car je suis rentré il y a peu.
Mais déjà dans la version 2, tu me diras c'est un détail sans doute mais je suis perfectionniste non pas par nature mais de par mon travail, il manque des lignes (6 pour être précis) dans le dernier tableau.
Mais ceci étant, on peut peut-être jouer autrement : si le nombre de dates à extraire dépasse 20 on créer une copie du tableau pour pouvoir extraire le reste et idem si le nombre dépasse 40 créer encore une copie...
Vois-tu où je veux en venir et est-ce que c'est faisable ?
Bonne soirée à toi.
Amicalement.
 

Cousinhub

XLDnaute Barbatruc
Re : Extraction par VBA

Bonsoir,
j'ai fait cette manip, uniquement, parce que tu avais 3 lignes en bas colorées en vert clair;
Sinon, jamais, je ne me serais fait Ch.... pour cela
J'aurais utilisé l'impression des titres....
Bien plus simple, mais t'auras pas tes 3 lignes vertes en bas (à moins d'un code fonction des lignes par page, blablalba....)
 

criscris11

XLDnaute Accro
Re : Extraction par VBA

Bonjour bhbh,
Bien vu ta réponse et j'en prends bien note : je vais voir comment gérer tout cà. Hier, j'ai oublié de te remercier pour les commentaires du code donc merci. Aurais-tu encore quelques secondes de ton temps pour commenter la macro mise en forme car il y a des procédures que je ne connaissais pas ?
Par contre, je viens de me rendre compted'un petit souci : l'extraction se fait bien mais pas dans l'ordre chronologique, tu me diras cela ne doit pas être trop dur il suffit de trier mais ce qui reste d'être plus dur (peut-être pas pour toi) cest de trier dans les 3 tableaux dans le cas où les trois soient remplis.
Peux-tu me tenir au courant. Merci d'avance.
Bonne journée à toi.
 

Pièces jointes

  • Extraction CSCMS (VBA)v3.zip
    57.3 KB · Affichages: 50
  • Extraction CSCMS (VBA)v3.zip
    57.3 KB · Affichages: 52
  • Extraction CSCMS (VBA)v3.zip
    57.3 KB · Affichages: 53
Dernière édition:

Cousinhub

XLDnaute Barbatruc
Re : Extraction par VBA

Bonjour Chris,
pour le tri, il suffit de trier AVANT la mise en forme.
Fait l'extraction, met un ' avant la ligne Call mise_en_forme, tu auras toute l'extraction dans ton deuxième onglet.
Tu démarres l'enregistreur de macro, puis tu fais ton tri.
Ensuite, il suffit de l'adapter....
Pour le code de la mise en forme, ce que tu ne comprends peut-être pas c'est ces lignes :
ActiveSheet.ResetAllPageBreaks 'on supprime tous les sauts de page
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell 'on insère un saut de page horizontal
ActiveWindow.SelectedSheets.VPageBreaks.Add Before:=ActiveCell ' saut de page vertical
Range("J81").Select
ActiveSheet.VPageBreaks(1).Delete 'on supprime le saut de page pour pouvoir insérer un autre
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
ActiveWindow.SelectedSheets.VPageBreaks.Add Before:=ActiveCell

Pour les sauts de page, en faisant un essai, tu verras que pour le 1er, pas de problème, mais pour insérer un autre, il faut d'abord supprimer le précédent, puis insérer un autre. Ce n'est pas pour autant que le précédent est supprimé, c'est la procédure....
Je pense que la méthode "Impression des titres" serait la plus adaptée, tu n'aurais pas de souci de mise en forme, insertion de saut de page....
Commence ton projet, et reviens si tu n'y arrives pas
Bon courage
 

Cousinhub

XLDnaute Barbatruc
Re : Extraction par VBA

Re-,
en accord avec moi-même :D, j'ai donc utilisé la méthode de l'impression des titres. De plus, j'ai supprimé ta colonne D (fusionnée). Il faut savoir que la fusion de cellules sur Excel n'est que source d'embrouilles (pour rester poli :p).
Regarde le fichier joint, et envoies les remarques le cas échéant.
Bonne journée
 

Pièces jointes

  • Extraction CSCMS (VBA)v3.zip
    55.4 KB · Affichages: 51
  • Extraction CSCMS (VBA)v3.zip
    55.4 KB · Affichages: 47
  • Extraction CSCMS (VBA)v3.zip
    55.4 KB · Affichages: 48

criscris11

XLDnaute Accro
Re : Extraction par VBA

Re bhbh,
Merci de t'investir dans mon projet.
Les remarques que je pourrais faire sont les suivantes : je suis partant pour utiliser les impressions de titres mais que deviennent les 3 lignes (vertes) qui sont situées en fin de tableau.
Et s'il n'y a qu'une page à imprimer, si possible, je voudrais que le tableau garde son aspect d'origine même si toutes les lignes (20) ne sont pas remplies.
En espérant ne pas trop être exigeant et ne prendre trop sur ton temps.
Merci d'avance et bon après-midi.
Amicalement.
 

criscris11

XLDnaute Accro
Re : Extraction par VBA

Bonsoir bhbh,
Je ne sais pas si tu arrives à t'en sortir avec la mise en page. De mon côté, j'ai revu un peu les différentes manip : la v2 était bien au niveau de la mise en page sauf que quand j'appele ta macro le dernier tableau est tronqué de quelques lignes (de 117 avant la macro et 114 après la macro). Je pense que si tu arrives à régler ce petit détail, il ne restera plus qu'à insérer la procédure de tri de la v3.
Bon courage et bonne nuit.

Si demain j'ai un peu de temps, je ferais des tests avec l'enregistreur de macros.
 

Cousinhub

XLDnaute Barbatruc
Re : Extraction par VBA

Bonsoir, un breton qui renonce, ça se saurait....:D
regarde le fichier joint.
Le plus dur, la barre verte en bas...
Pour trouver la formule...... Je te laisse le soin de découvrir comment je pense avoir résolu le problème.
J'ai fait l'essai avec 9 feuilles à imprimer, il n'y a pas de problèmes chez moi.
Regarde, et reviens si pb
 

Pièces jointes

  • Extraction CSCMS (VBA)v4.zip
    57.2 KB · Affichages: 63

criscris11

XLDnaute Accro
Re : Extraction par VBA

Bonjour bhbh,
Matinal à ce que je vois. Merci pour ton investissement.
Bon, tu vas dire il me c...r celui-là mais il y a encore des choses qui ne collent pas et ce n'est pas forcément de ta faute donc un premier temps je vais reposter le fichier avec les vrais dimensions de mon tableau ainsi que la mise en page d'origine.
Ce que j'ai omis de te dire c'est que dans les 3 dernières lignes (à la fin du tableau) il y a du texte.
Quand je lance la macro, le premier saut de page n'est pas bon : il est dessus des 3 lignes vertes et non en dessous et le tableau comporte que 20 lignes (souci de lisibilité) et la mise en page ne correspond pas (marges...).

PS : je sais bien qu'un breton n'abandonne jamais ;) et entre breton (d'adoption pour moi depuis 17 ans), je suis bien placé pour le savoir (en plus je suis marié avec une bretonne).
As-tu jeter un coup d'oeil par rapport à ma réponse de 23h50 ?
 

Pièces jointes

  • Mise en page.xls
    29 KB · Affichages: 95
  • Mise en page.xls
    29 KB · Affichages: 103
  • Mise en page.xls
    29 KB · Affichages: 105

Discussions similaires

Statistiques des forums

Discussions
312 164
Messages
2 085 877
Membres
103 007
dernier inscrit
salma_hayek