IMPRIMER UN FLEXGRID MULTI-LIGNES

cs_KifKif Messages postés 88 Date d'inscription jeudi 7 mars 2002 Statut Membre Dernière intervention 4 avril 2008 - 17 mai 2003 à 08:34
xeros3333 Messages postés 1 Date d'inscription mercredi 11 juillet 2007 Statut Membre Dernière intervention 11 juillet 2007 - 11 juil. 2007 à 11:58
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/7119-imprimer-un-flexgrid-multi-lignes

xeros3333 Messages postés 1 Date d'inscription mercredi 11 juillet 2007 Statut Membre Dernière intervention 11 juillet 2007
11 juil. 2007 à 11:58
Bonjour,
Très bon code bien utile, fonctionne très bien.
Sinon y aurait-il une solution dans le cas d'une grille trop grande? je suis débutant en vb et j'ai essayé le "printer.newpage" mais je n'obtient pas de très bon résultats,en effet à la denrièere ligne toute les données s'imprimer les unes au dessus des autres, si quelqu'un a une idée.....
bonne journée
xeros
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
2 déc. 2004 à 08:20
Pour le Not =, c'est vrai que c'est une question de gout.
Moi je prefere comme ça, c'est psycho mais je n'aime pas le <>.

Pour le décalage, je sais pas trop. On dirait qu'avec l'option F pour remplir la case, cette dernière est plus grande... Les position X1 et Y1 ne changent pas, mais la cellule termine plus bas et plus a droite (env 2 mm).
Donc ca se croise avec les celules non grisées.

A tu fais un essai ?
Veux tu que je t'envoi mon projet pour voir ?

Bonne prog
++
cs_PROGRAMMIX Messages postés 1133 Date d'inscription mercredi 2 octobre 2002 Statut Membre Dernière intervention 24 juillet 2011 2
2 déc. 2004 à 06:54
Tentes le coup...

Ceci dit, plutôt que "If Not couleur = &HFFFFFF", je préfère écrire "If couleur <> &HFFFFFF" ; ça me paraît plus lisible (compréhensible) lorsqu'on relit le code quelques mois plus tard.

En ce qui concerne le décallage, est-il important ? Je veux dire par là, ne correspondrait-il pas à la "place" que prennent les lignes de la case ?
Ou alors, c'est le "- 1 * 56.7". J'ai ajouté ce morceau afin de tracer les lignes 1 mm avant les positions choisies (PosX, PoY, etc.).

A toi de voir...
Si ton code marche, préviens-moi ; j'aimerais en avoir une copie (si tu changes d'autres choses) afin de pouvoir tenir la source à jour. D'avance merci.
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
1 déc. 2004 à 16:51
Moi non plus pas d'imprimante laser mais je voudrai griser quelques cellules, un niveau de gris me convient parfaitement :

J'ai songé à ça mais il y a un petit décallage :

If Not couleur = &HFFFFFF Then
Printer.Line (posX - 1 * 56.7, posY - 1 * 56.7)-(posX + largeur + 1 * 56.7, posY + hauteur + 1 * 56.7), couleur, BF
Else
Printer.Line (posX - 1 * 56.7, posY - 1 * 56.7)-(posX + largeur + 1 * 56.7, posY + hauteur + 1 * 56.7), , B
End If

Qu'en pense tu ?
cs_PROGRAMMIX Messages postés 1133 Date d'inscription mercredi 2 octobre 2002 Statut Membre Dernière intervention 24 juillet 2011 2
1 déc. 2004 à 15:20
Merci pour la note

Malheureusement pour la couleur, je ne sais... vu que je n'ai toujours pas d'imprimante couleur... (et oui...)
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
1 déc. 2004 à 15:08
Super juste ce qu'il me fallait.
Seul petit pb :
Le backcolor n'est pas imprimé.
Je vois qu'il est récupéré
couleur = LaGrille.CellBackColor
Mais qu'il n'est envoyé nul part à l'imprimante.
Qq1 sait-il comment faire ?

En tout cas ça vaut un bon 9/10

Bonne prog
++
devsurf Messages postés 148 Date d'inscription dimanche 13 octobre 2002 Statut Membre Dernière intervention 13 novembre 2008
17 mai 2003 à 09:49
Trés instructif. Merci
cs_KifKif Messages postés 88 Date d'inscription jeudi 7 mars 2002 Statut Membre Dernière intervention 4 avril 2008
17 mai 2003 à 08:34
Très intéressant pour les utilisateurs de 'FlexGrid' car le programme est largement commenté et fonctionne parfaitement. Bravo Didier
Rejoignez-nous