Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Filter BDD + recopier des tableaux dans Word

9 réponses
Avatar
Apitos
Bonjour =E0 tous,

Dans un classeur, j'ai trois feuilles de travail : Maintenance, Rel=E8ve d=
=E9rangement et Travaux neufs.

J'aimerais appliquer un filtre avanc=E9 sur chacune des feuilles cit=E9es p=
our choisir les donn=E9es correspondantes au mois de janvier 2016 et les fa=
ire recopier les trois tableaux r=E9sultants dans un document Word.

Deux pi=E8ces jointes pour illustrer l'exemple.

http://www.cjoint.com/c/FBoqPP4kfGV

http://www.cjoint.com/c/FBoqQeQWHjV

Merci d'avance.

9 réponses

Avatar
MichD
Bonjour,

Ton fichier Excel : http://www.cjoint.com/c/FBpdgU3LcEX

MichD
Avatar
Apitos
Bonjour MichD,

Merci pour le fichier, si super sympa :)

Il manque une condition dans la feuille "Récap" pour tester s'il y avait déjà des tableaux afficher d'une opération précédente, et lorsqu' on voudra faire une nouvelle opération, que les anciens tableaux soient e ffacés.

Sinon, à chaque nouvelle exécution du code, les tableaux viennent se su perposés l'un au dessous de l'autre.

Je teste encore.
Avatar
Jacquouille
"Apitos" a écrit dans le message de groupe de discussion :


<< Bonjour MichD,

<< Sinon, à chaque nouvelle exécution du code, les tableaux viennent se
superposés l'un au dessous de l'autre.

C'est ce que l'on appelle le capitalisme..... -))

Courage.

Jacques
" Le vin est au repas ce que le parfum est à la femme."
.


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
Avatar
MichD
À la lecture ce matin, j'ai resserré le code et
je l'ai commenté.

Nouveau fichier : http://www.cjoint.com/c/FBpoozjSm6X

J'espère que tu profites de la situation pour apprendre...


MichD
Avatar
MichD
C'est ce que l'on appelle le capitalisme..... -))



Tu trouves? ;-))
Avatar
Jacquouille
Ben oui.
Les tableaux (de maître, il va de soi) qui s'empilent ....
Maintenant, qu'ils fussent l'un sur l'autre, ou sous l'autre, peu importe.
Le tas ( de tableaux) augmente .....
-))

Jacques, pauvre pêcheur de macros. -))
" Le vin est au repas ce que le parfum est à la femme."
.
"MichD" a écrit dans le message de groupe de discussion :



C'est ce que l'on appelle le capitalisme..... -))



Tu trouves? ;-))


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
Avatar
MichD
Très légère amélioration : http://www.cjoint.com/c/FBqobzdIOQX
Avatar
Apitos
Bonsoir MichD, Jaquouille,

J'espère que tu profites de la situation pour apprendre.



Tu es un bonhomme généreux et j'ai beaucoup appris de toi MichD.

Et j'espère en apprendre plus dans l'avenir.

Je fais encore des tests (j'essaye de régler le problème des textes dan s les colonnes A << Centre >> et colonnes B << type d'équipement >> dans le cas ou ils sont un peu plus longs :)

Dans Word si le texte dans une cellule est écrit sur deux lignes le code ne prend que la première ligne la deuxième ne s'affiche pas)

Très légère amélioration : http://www.cjoint.com/c/FBqobzdIOQX



Je teste le nouveau fichier.

Merci.
Avatar
MichD
Dans ton fichier Excel, pour avoir du texte dans une cellule sur plus
d'une ligne, tu as formaté la cellule avec l'option "Renvoyer à la ligne
automatiquement", la ligne de titre des colonnes est copiée avec le
résultat du filtre dans la feuille "compilation" et le format des
cellules. L'option "Renvoyer à la ligne automatiquement" empêche
d'utiliser une ligne de commande comme celle-ci dans la feuille de
compilation. .

Plg.EntireColumn.Autofit


La "solution", est de déterminer la même largeur pour les 3 colonnes
"A:A" (sur chacune des 3 feuilles) et ce pour chacune des colonnes A:G.
Tu t'assures qu'elles sont suffisamment larges pour ce que tu veux faire.

Si pour toutes les cellules de la plage de cellules des données, tu
coches l'option "Renvoyer à la ligne automatiquement", une ligne
s'ajoutera automatiquement au besoin, mais la colonne demeurera de la
même largeur. Il n'y a pas de solution miracle!