Problme d'etat sous access

Signaler
Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016
-
Messages postés
1471
Date d'inscription
mardi 5 février 2002
Statut
Membre
Dernière intervention
20 octobre 2014
-
Bonjour

ma demande se porte sur la mise en page d'1 Etat sous access, car je doit editer des etiquette :

-je n'arrive pas à faire sauter les marges.(pourtant dans les proprieter je les ai mis à 0cm. mais à l'appercu av imp, elle sont toujours là !!! :sad)

-et je n'arrive pas non plus a séparer le detail de l'Etat en des zone distincte (separer en son millieux et verticalement), pour eviter d'imprimer deux fois la même etiquet sur la même ligne.

si quelqu'un est super fort en Etat je trouveraisca carrement puissant!!!

merci

marcelin

ps :si vous avez que une des deux réponse, ca m'interesse
aussi

14 réponses

Messages postés
1471
Date d'inscription
mardi 5 février 2002
Statut
Membre
Dernière intervention
20 octobre 2014
10
'MARGE!
'A mettre dans un module
'definir les marge avant chaque impression

Type ch_DEVMODE
RGB As String * 94
End Type
Type type_DEVMODE
chNomPériphérique As String * 16
entSpécVersion As Integer
entVersionGestionnaire As Integer
entTaille As Integer
entExtraGestionnaire As Integer
lngChamps As Long
entOrientation As Integer
entTaillePapier As Integer
entLongueurPapier As Integer
entLargeurPapier As Integer
entEchelle As Integer
entCopies As Integer
entSourceDéfaut As Integer
entQualitéImpression As Integer
entCouleur As Integer
entRectoverso As Integer
entResolution As Integer
entOptionTT As Integer
entAssembler As Integer
entNomFormulaire As String * 16
lngPad As Long
lngBits As Long
lngPW As Long
lngPH As Long
lngDFI As Long
lngDFr As Long
End Type
Type ch_PRTMIP
chRGB As String * 28
End Type
Type type_PRTMIP
entMargeGauche As Long
entMargeHaut As Long
entMargeDroite As Long
entMargeBas As Long
entDonnéesSeulement As Long
entLargeur As Long
entHauteur As Long
entTailleDesEléments As Long
entColonnes As Long
entEspacementDeColonnes As Long
entEspacementDeLignes As Long
entDisposition As Long
entImpressionRapide As Long
entFeuilleDeDonnées As Long
End Type

Public Sub ModifierMarges(txtNom As String, lngHaut As Long, lngBas As Long, lngGauche As Long, lngDroite As Long)
' Modifier les marges d'un rapport avant de l'imprimer
' paramètres : 1- le nom du rapport en texte
' 2- la marge du haut en cm
' 3- la marge du bas en cm
' 4- la marge du gauche en cm
' 5- la marge du droite en cm
' exemple : ModifierMarges "Contacts", 1, 1, 1.5, 1.5
' DoCmd.OpenReport "Contacts", acViewPreview
Dim ChaînePrtMip As ch_PRTMIP
Dim PM As type_PRTMIP
Dim rpt As Report
DoCmd.OpenReport txtNom, acDesign ' Ouvre l'état en mode Création.
Set rpt = Reports(txtNom)
ChaînePrtMip.chRGB = rpt.PrtMip
LSet PM = ChaînePrtMip
PM.entMargeHaut = lngHaut * 567 ' Définit les marges.
PM.entMargeBas = lngBas * 567
PM.entMargeGauche = lngGauche * 567
PM.entMargeDroite = lngDroite * 567
LSet ChaînePrtMip = PM ' Met à jour la propriété.
rpt.PrtMip = ChaînePrtMip.chRGB
DoCmd.Save
End Sub

2) j'ai pas compris ce que tu veux faire :))

:clown) BasicInstinct :clown)
Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016

-merci mais je l'appel comment le module, sur le chargement de mon etat?

-pour la deusième, ce que je voudrait faire:
si tu veusx quand tu as une plache d'etiquette imprimable, tu en as plusieur par ligne.

or l' Etat ne met qu'un sul jeu d'enregitrement par ligne.
et ce que je voudrais faire pour mon impression c'est en metre plusieur par ligne :

au lieu de :
EtiquetteA
EtiquetteB
EtiquetteC

je voudrais:
EtiquetteA EtiquetteB EtiquetteC

tu vois ce que je veux dire?

merci

marcelin :big)
Messages postés
1471
Date d'inscription
mardi 5 février 2002
Statut
Membre
Dernière intervention
20 octobre 2014
10
dans le code juste avant de faire
DoCmd.OpenReport "MonEtat"

tu mets

modifiermarges "MonEtat",0,0,0,0

le nom du module n'a aucune importance

pour avoir plusieurs etiquettes dans le meme etat, il faut certainement passer un par un recordset & transmettre champ par champ les valeurs.
Pour resumé, pas possible avec l'assistant d'access, faut du code en dur..... (on voit vite les limites d'access [:8])

:clown) BasicInstinct :clown)
Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016

tu cartonne!!!!!!!! :big)
merci bcp pour le truc des marge, ca marche nikel.
mais à tu une idée pour le 2eme truc?

marcelin
Messages postés
1471
Date d'inscription
mardi 5 février 2002
Statut
Membre
Dernière intervention
20 octobre 2014
10
oui:
rempli un recordset avec ta requete, et passe les valeurs a ton etat:

Set Mydb = CurrentDb
Requete = "SELECT * FROM Solutions WHERE Numprojet='" & Forms!solutions!Numprojet & "';"

Set Myrec = Mydb.OpenRecordset(Requete)

docmd.openreports "MonEtat", acdesign
Myrec.movefirst
'1ere Etiquette
reports("MonEtat").Monchamp1=MyRec(0)
reports("MonEtat").Monchamp2=MyRec(1)
reports("MonEtat").Monchamp3=MyRec(2)

'2eme
Myrec.movenext
reports("MonEtat").Monchamp4=MyRec(0)
reports("MonEtat").Monchamp5=MyRec(1)
reports("MonEtat").Monchamp6=MyRec(2)

....

MAIS je pense qu'il faut imprimer ton etat, page par page apres : cad qd ta page est remplie, tu l'imprimes, et tu recommence 1ere etiquette ....

:clown) BasicInstinct :clown)
Messages postés
1471
Date d'inscription
mardi 5 février 2002
Statut
Membre
Dernière intervention
20 octobre 2014
10
Au fait, j'ai directement tapé le code dans le forum, donc il peut y avoir des erreurs, oublis...
:clown) BasicInstinct :clown)
Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016

merci
mais j'ai esseiler un truc du style hier, et le debugeur ma dit que je pouvais pas faire ca..! :sad)

je crois que je vais eisseiler d'importer vers word avec l'outil de création d'etiquettes.

a+

marcelin
Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016

ca marche pas je sais pas coment on fais pour utiliser un RS en word!!!!!!!!!!!!!

y en a marre, comme ci Access pouvais pas gerer ca !!!!!!!!!!!!
:(
Messages postés
1471
Date d'inscription
mardi 5 février 2002
Statut
Membre
Dernière intervention
20 octobre 2014
10
helas non, access ne sait pas gere ca !

au fait,
dim Mydb as database
dim MyRec as recordset

je l'ai fait il y a longtemps, et ca fonctionne bien.
j'ai pas gardé les coes & j'ai changé de boite depuis, mais c'est faisable !)

:clown) BasicInstinct :clown)
Messages postés
182
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
22 décembre 2016

ouai mais il y a plusieur centaine d'etiquettes à imprimer et ce devrais ce faire automatiquement.
je penser le faire de la maniére suivante.:

dans l'Etat je prepare ma ligne de trop etiquette et quand j'arrive au bout, je me demander comment on peut passer à la ligne. pour recommencer la manip avec les 3 mêmes Base, mais 3 nouveau enregistrement.

et il posible de forcer le passage à la ligne?

a+

marcelin
Messages postés
1
Date d'inscription
mardi 14 janvier 2003
Statut
Membre
Dernière intervention
14 janvier 2004

Lorsque je lance un état nommé ETAT1 dans ma base, il faut entrer un parametre comme par exemple "entrez un numéro de contrat" 1958. Puis après avoir tapé 1958, je vois l'état qui a le numéro 1958.
Ce paramètre en mode creation est nommé CLICONTR dans l'état.

Maintenant je souhaite, prendre un autre paramètre nommé CLICONTR2.

Donc à la place de CLICONTR j'ai mis CLICONTR2.
Alors dans les propriété de CLICONTR j'ai mis dans le nom et la source controle CLICONTR2.

Mais le problème est que lorsque je relance l'état1 , il me demande encore "entrez un numéro de contrat" ce qui correspond à CLICONTR et après il me demande le paramètre de CLICONTR2.

Comment faire pour supprimer le parametre CLICONTR et mettre à la place le parametre CLICONTR2

Merci d'avance !!! pour m'aider à résoudre ce problème.
Messages postés
42
Date d'inscription
vendredi 9 avril 2004
Statut
Membre
Dernière intervention
17 février 2005

Messages postés
6
Date d'inscription
vendredi 27 décembre 2002
Statut
Membre
Dernière intervention
18 octobre 2005

merci pour le code
je l'ai essayé et il marche trés bien mais il ya un probleme c'est la demande de enregistrer les modification par systeme aprés la fermeture de l'etat exit il a soulution est merci
Messages postés
1471
Date d'inscription
mardi 5 février 2002
Statut
Membre
Dernière intervention
20 octobre 2014
10
désactive les message d'alerte et normalement ca roule :)

@++

BasicInstinct