Impression msflexgrid en VBA access 2003 [Résolu]

Signaler
Messages postés
16
Date d'inscription
mardi 26 juin 2007
Statut
Membre
Dernière intervention
2 novembre 2007
-
Messages postés
16
Date d'inscription
mardi 26 juin 2007
Statut
Membre
Dernière intervention
2 novembre 2007
-
Bonjour,
J'ai fais des recherches pour savoir comment imprimer une msflexgrid en vba sous access 2003
mais je ne trouve des explications que pour vb.
Savez vous s'il est possible (facilement ?) de le faire en vba ?
merci d'avance.

10 réponses

Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
Pour ce qui est de copier les données une à une, oui ça se fait très bien avec une double-boucle, quoique plus lent que CopyFromRecordset.

Pour ce qui est des couleurs, il faudra gérer selon les couleurs acceptées par Excel. Il n'y a pas beaucoup de possibilités de couleurs, mais ça devrait suffire, je pense.

N'oublie pas qu'Excel, en fait de totaux, sous-totaux et ce genre de choses est difficilement battable...

MPi
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
Si tu n'as pas accès à l'objet Printer comme sous Excel, ça risque d'être assez difficile...
Si tu peux te permettre de passer par Excel, peut-être pourrais-tu y copier tes données pour les imprimer.

une idée comme ça...

MPi
Messages postés
492
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
2 juillet 2012
1
Bonjour,


Il n'y a aucun moyen "simple" pour imprimé un MSFlexGrid, il faut faire une routine qui calcul tout, les colonnes, les lignes etc.. il y à bien des sources qui te donne une solution mais il faudra un peu chercher.
Une petite remarque tout de même, pourquoi employer un FlexGrid alord que tu est en Excel et qu'il peut tout faire ?
A+
Messages postés
492
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
2 juillet 2012
1
Correction, tu est sous Access, mais tu peu aussi employé Excel qui serrait plus simple à traiter ?
Messages postés
492
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
2 juillet 2012
1
Re correction, il semblerait qu'il y ai quand même moyen d'imprimé un grid facilement mais dans certaine condition, le grid doit être affiché en entier, si plusieur pages il faut ajouter du code. Voir lien
http://www.vbfrance.com/codes/IMPRIMER-MSFLEXGRID-PAYSAGE_4732.aspx


 


A+
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
Salut lermite,
je ne pense pas que "Printer" soit disponible sous Access. En tout cas, il n'y est pas sous Excel... Je pense que l'idée d'utiliser Excel demeure un bon choix. En général, ceux qui possèdent Access possèdent aussi Excel. Le contraire n'est pas nécessairement vrai, compte tenu des versions allégées d'Office.

MPi
Messages postés
16
Date d'inscription
mardi 26 juin 2007
Statut
Membre
Dernière intervention
2 novembre 2007

Merci, j'y vois un peu plus clair. J'ai choisi une msflexgrid car je pensais qu'il n'y avait que ce moyen
pour faire apparaitre des donnees qui viennent de plusieurs tables dans un tableau.
L'avantage c'est que maintenant je connais bien tout ce qu'on peut faire avec une msflexgrid (sauf l'imprimer ...)
L'idee de passer par Excel me parait bonne mais oups... comment fait on pour passer une msflexgrid a excel siouplait ?.
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
Si tu remplis ta FlexGrid avec un Recordset, tu peux passer ce Recordset à Excel en utilisant la fonction CopyFromRecordset

Soit tu passes par Excel, soit tu passes par Access.
Il faudrait savoir ...
Dans les 2 cas, tu pourrais utiliser cette méthode.
Voir l'aide

MPi
Messages postés
16
Date d'inscription
mardi 26 juin 2007
Statut
Membre
Dernière intervention
2 novembre 2007

Pour faire ma grille j'utilise plusieurs recordset mais  je rajoute des lignes de sous totaux et de totaux qui sont stoquees dans des tables internes a 2 dimensions et meme a 3 dimensions.
Est ce qu'il n'y a pas moyen de parcourir chaque cellules de ma msflexgrid et de les mettre  dans une cellule d'un  document excel en gardant leur proprietes (couleur, font ...) ?
Messages postés
16
Date d'inscription
mardi 26 juin 2007
Statut
Membre
Dernière intervention
2 novembre 2007

Ok, merci, effectivement le mieux je pense est de transferer mes cellules une a une vers excel et de gerer ma feuille excel ensuite avec access.