Je suis en train de faire un bout de code qui me permet de"bourrer" avec des
blancs les champs d'une table.
J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation :
=================================
If IsNull(rst![DET numligneliq]) Then
rst![DET numligneliq] = Space(4)
Else
rst![DET numligneliq] = rst![DET numligneliq] + Space(4 -
Len(rst![DET numligneliq]) + 1)
End If
=================================
Je dois taper ce bout de code autant de fois que j'ai de champs dans ma
table.
Question :
=======
Pour alleger l'écriture du code, je pensais faire une boucle en récupérant
le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer le
nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller, cela
serait génial !
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raymond [mvp]
Bonjour.
Avant de te proposer une solution soit par requête soit par vba, il faut que tu sois informé que chaque fois que tu vas passer sur tes contrôles en saisie dans un formulaire, tous les espaces non significatifs de la fin seront supprimpés par access, ce qui va annuler les effets de cette belle procédure que tu veux faire.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" a écrit dans le message de news: ctt1mm$2oj$
Bonjour,
Je suis en train de faire un bout de code qui me permet de"bourrer" avec des blancs les champs d'une table. J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation : ================================ > If IsNull(rst![DET numligneliq]) Then rst![DET numligneliq] = Space(4) Else rst![DET numligneliq] = rst![DET numligneliq] + Space(4 - Len(rst![DET numligneliq]) + 1) End If ================================ > Je dois taper ce bout de code autant de fois que j'ai de champs dans ma table.
Question : ====== > Pour alleger l'écriture du code, je pensais faire une boucle en récupérant le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer le nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller, cela serait génial !
Merci de votre aide précieuse !
Cordialement,
Jean Marie
Bonjour.
Avant de te proposer une solution soit par requête soit par vba, il faut que
tu sois informé que chaque fois que tu vas passer sur tes contrôles en
saisie dans un formulaire, tous les espaces non significatifs de la fin
seront supprimpés par access, ce qui va annuler les effets de cette belle
procédure que tu veux faire.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" <jm.vigneaud@gironde.chambagri.fr> a écrit dans le
message de news: ctt1mm$2oj$1@s1.news.oleane.net...
Bonjour,
Je suis en train de faire un bout de code qui me permet de"bourrer" avec
des
blancs les champs d'une table.
J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation :
================================ > If IsNull(rst![DET numligneliq]) Then
rst![DET numligneliq] = Space(4)
Else
rst![DET numligneliq] = rst![DET numligneliq] + Space(4 -
Len(rst![DET numligneliq]) + 1)
End If
================================ >
Je dois taper ce bout de code autant de fois que j'ai de champs dans ma
table.
Question :
====== >
Pour alleger l'écriture du code, je pensais faire une boucle en récupérant
le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer le
nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller, cela
serait génial !
Avant de te proposer une solution soit par requête soit par vba, il faut que tu sois informé que chaque fois que tu vas passer sur tes contrôles en saisie dans un formulaire, tous les espaces non significatifs de la fin seront supprimpés par access, ce qui va annuler les effets de cette belle procédure que tu veux faire.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" a écrit dans le message de news: ctt1mm$2oj$
Bonjour,
Je suis en train de faire un bout de code qui me permet de"bourrer" avec des blancs les champs d'une table. J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation : ================================ > If IsNull(rst![DET numligneliq]) Then rst![DET numligneliq] = Space(4) Else rst![DET numligneliq] = rst![DET numligneliq] + Space(4 - Len(rst![DET numligneliq]) + 1) End If ================================ > Je dois taper ce bout de code autant de fois que j'ai de champs dans ma table.
Question : ====== > Pour alleger l'écriture du code, je pensais faire une boucle en récupérant le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer le nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller, cela serait génial !
Merci de votre aide précieuse !
Cordialement,
Jean Marie
Jean Marie VIGNEAUD
En fait, une fois les bourrages terminés, j'exporte les données pour un traitement avec une autre application.
Merci.
"Raymond [mvp]" a écrit dans le message de news: #
Bonjour.
Avant de te proposer une solution soit par requête soit par vba, il faut que
tu sois informé que chaque fois que tu vas passer sur tes contrôles en saisie dans un formulaire, tous les espaces non significatifs de la fin seront supprimpés par access, ce qui va annuler les effets de cette belle procédure que tu veux faire.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" a écrit dans le message de news: ctt1mm$2oj$
Bonjour,
Je suis en train de faire un bout de code qui me permet de"bourrer" avec des blancs les champs d'une table. J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation : ================================ > > If IsNull(rst![DET numligneliq]) Then rst![DET numligneliq] = Space(4) Else rst![DET numligneliq] = rst![DET numligneliq] + Space(4 - Len(rst![DET numligneliq]) + 1) End If ================================ > > Je dois taper ce bout de code autant de fois que j'ai de champs dans ma table.
Question : ====== > > Pour alleger l'écriture du code, je pensais faire une boucle en récupérant
le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer le
nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller, cela
serait génial !
Merci de votre aide précieuse !
Cordialement,
Jean Marie
En fait, une fois les bourrages terminés, j'exporte les données pour un
traitement avec une autre application.
Merci.
"Raymond [mvp]" <XYZ.officesystem.access@free.fr> a écrit dans le message de
news: #9Jqg5eCFHA.3592@TK2MSFTNGP09.phx.gbl...
Bonjour.
Avant de te proposer une solution soit par requête soit par vba, il faut
que
tu sois informé que chaque fois que tu vas passer sur tes contrôles en
saisie dans un formulaire, tous les espaces non significatifs de la fin
seront supprimpés par access, ce qui va annuler les effets de cette belle
procédure que tu veux faire.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" <jm.vigneaud@gironde.chambagri.fr> a écrit dans le
message de news: ctt1mm$2oj$1@s1.news.oleane.net...
Bonjour,
Je suis en train de faire un bout de code qui me permet de"bourrer" avec
des
blancs les champs d'une table.
J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation :
================================ > > If IsNull(rst![DET numligneliq]) Then
rst![DET numligneliq] = Space(4)
Else
rst![DET numligneliq] = rst![DET numligneliq] + Space(4 -
Len(rst![DET numligneliq]) + 1)
End If
================================ > >
Je dois taper ce bout de code autant de fois que j'ai de champs dans ma
table.
Question :
====== > >
Pour alleger l'écriture du code, je pensais faire une boucle en
récupérant
le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer
le
nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller,
cela
En fait, une fois les bourrages terminés, j'exporte les données pour un traitement avec une autre application.
Merci.
"Raymond [mvp]" a écrit dans le message de news: #
Bonjour.
Avant de te proposer une solution soit par requête soit par vba, il faut que
tu sois informé que chaque fois que tu vas passer sur tes contrôles en saisie dans un formulaire, tous les espaces non significatifs de la fin seront supprimpés par access, ce qui va annuler les effets de cette belle procédure que tu veux faire.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" a écrit dans le message de news: ctt1mm$2oj$
Bonjour,
Je suis en train de faire un bout de code qui me permet de"bourrer" avec des blancs les champs d'une table. J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation : ================================ > > If IsNull(rst![DET numligneliq]) Then rst![DET numligneliq] = Space(4) Else rst![DET numligneliq] = rst![DET numligneliq] + Space(4 - Len(rst![DET numligneliq]) + 1) End If ================================ > > Je dois taper ce bout de code autant de fois que j'ai de champs dans ma table.
Question : ====== > > Pour alleger l'écriture du code, je pensais faire une boucle en récupérant
le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer le
nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller, cela
serait génial !
Merci de votre aide précieuse !
Cordialement,
Jean Marie
Raymond [mvp]
Vu sous cet angle , c'est bieN je te donne une procédure ci-dessous que tu devras tester à fond car je ne l'ai pas fait, mais ça devrait aller. cocher la référence DAO 3.6
Dim Db As DAO.Database Dim Tdf As DAO.TableDef Dim Fld As DAO.Field Dim Ctl As Control Dim Rs As DAO.Recordset Set Db = CurrentDb Set Tdf = Db.TableDefs("Table2") Set Rs = Db.OpenRecordset("table2") If Rs.BOF Then GoTo Exit_Sub Do Until Rs.EOF Rs.Edit For Each Fld In Tdf.Fields If Fld.Type = dbText Then Rs.Fields(Fld.Name) = Rs.Fields(Fld.Name) & Space(Fld.Size - Nz(Len(Rs.Fields(Fld.Name)), 0)) End If Next Rs.Update Rs.MoveNext Loop Exit_Sub: Set Rs = Nothing Set Tdf = Nothing Set Db = Nothing Set Fld = Nothing Set Ctl = Nothing
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" a écrit dans le message de news: ctt6un$714$
En fait, une fois les bourrages terminés, j'exporte les données pour un traitement avec une autre application.
Merci.
"Raymond [mvp]" a écrit dans le message de news: #
Bonjour.
Avant de te proposer une solution soit par requête soit par vba, il faut que
tu sois informé que chaque fois que tu vas passer sur tes contrôles en saisie dans un formulaire, tous les espaces non significatifs de la fin seront supprimpés par access, ce qui va annuler les effets de cette belle procédure que tu veux faire.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" a écrit dans le message de news: ctt1mm$2oj$
Bonjour,
Je suis en train de faire un bout de code qui me permet de"bourrer" avec des blancs les champs d'une table. J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation : ================================ >> > If IsNull(rst![DET numligneliq]) Then rst![DET numligneliq] = Space(4) Else rst![DET numligneliq] = rst![DET numligneliq] + Space(4 - Len(rst![DET numligneliq]) + 1) End If ================================ >> > Je dois taper ce bout de code autant de fois que j'ai de champs dans ma table.
Question : ====== >> > Pour alleger l'écriture du code, je pensais faire une boucle en récupérant
le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer le
nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller, cela
serait génial !
Merci de votre aide précieuse !
Cordialement,
Jean Marie
Vu sous cet angle , c'est bieN
je te donne une procédure ci-dessous que tu devras tester à fond car je ne
l'ai pas fait, mais ça devrait aller.
cocher la référence DAO 3.6
Dim Db As DAO.Database
Dim Tdf As DAO.TableDef
Dim Fld As DAO.Field
Dim Ctl As Control
Dim Rs As DAO.Recordset
Set Db = CurrentDb
Set Tdf = Db.TableDefs("Table2")
Set Rs = Db.OpenRecordset("table2")
If Rs.BOF Then GoTo Exit_Sub
Do Until Rs.EOF
Rs.Edit
For Each Fld In Tdf.Fields
If Fld.Type = dbText Then
Rs.Fields(Fld.Name) = Rs.Fields(Fld.Name) &
Space(Fld.Size - Nz(Len(Rs.Fields(Fld.Name)), 0))
End If
Next
Rs.Update
Rs.MoveNext
Loop
Exit_Sub:
Set Rs = Nothing
Set Tdf = Nothing
Set Db = Nothing
Set Fld = Nothing
Set Ctl = Nothing
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" <jm.vigneaud@gironde.chambagri.fr> a écrit dans le
message de news: ctt6un$714$1@s1.news.oleane.net...
En fait, une fois les bourrages terminés, j'exporte les données pour un
traitement avec une autre application.
Merci.
"Raymond [mvp]" <XYZ.officesystem.access@free.fr> a écrit dans le message
de
news: #9Jqg5eCFHA.3592@TK2MSFTNGP09.phx.gbl...
Bonjour.
Avant de te proposer une solution soit par requête soit par vba, il faut
que
tu sois informé que chaque fois que tu vas passer sur tes contrôles en
saisie dans un formulaire, tous les espaces non significatifs de la fin
seront supprimpés par access, ce qui va annuler les effets de cette belle
procédure que tu veux faire.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" <jm.vigneaud@gironde.chambagri.fr> a écrit dans le
message de news: ctt1mm$2oj$1@s1.news.oleane.net...
Bonjour,
Je suis en train de faire un bout de code qui me permet de"bourrer"
avec
des
blancs les champs d'une table.
J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation :
================================ >> > If IsNull(rst![DET numligneliq]) Then
rst![DET numligneliq] = Space(4)
Else
rst![DET numligneliq] = rst![DET numligneliq] + Space(4 -
Len(rst![DET numligneliq]) + 1)
End If
================================ >> >
Je dois taper ce bout de code autant de fois que j'ai de champs dans ma
table.
Question :
====== >> >
Pour alleger l'écriture du code, je pensais faire une boucle en
récupérant
le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer
le
nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller,
cela
Vu sous cet angle , c'est bieN je te donne une procédure ci-dessous que tu devras tester à fond car je ne l'ai pas fait, mais ça devrait aller. cocher la référence DAO 3.6
Dim Db As DAO.Database Dim Tdf As DAO.TableDef Dim Fld As DAO.Field Dim Ctl As Control Dim Rs As DAO.Recordset Set Db = CurrentDb Set Tdf = Db.TableDefs("Table2") Set Rs = Db.OpenRecordset("table2") If Rs.BOF Then GoTo Exit_Sub Do Until Rs.EOF Rs.Edit For Each Fld In Tdf.Fields If Fld.Type = dbText Then Rs.Fields(Fld.Name) = Rs.Fields(Fld.Name) & Space(Fld.Size - Nz(Len(Rs.Fields(Fld.Name)), 0)) End If Next Rs.Update Rs.MoveNext Loop Exit_Sub: Set Rs = Nothing Set Tdf = Nothing Set Db = Nothing Set Fld = Nothing Set Ctl = Nothing
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" a écrit dans le message de news: ctt6un$714$
En fait, une fois les bourrages terminés, j'exporte les données pour un traitement avec une autre application.
Merci.
"Raymond [mvp]" a écrit dans le message de news: #
Bonjour.
Avant de te proposer une solution soit par requête soit par vba, il faut que
tu sois informé que chaque fois que tu vas passer sur tes contrôles en saisie dans un formulaire, tous les espaces non significatifs de la fin seront supprimpés par access, ce qui va annuler les effets de cette belle procédure que tu veux faire.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jean Marie VIGNEAUD" a écrit dans le message de news: ctt1mm$2oj$
Bonjour,
Je suis en train de faire un bout de code qui me permet de"bourrer" avec des blancs les champs d'une table. J'utilise le code suivant qui fonctionne bien :
Exemple pour le champ numero ligne liquidation : ================================ >> > If IsNull(rst![DET numligneliq]) Then rst![DET numligneliq] = Space(4) Else rst![DET numligneliq] = rst![DET numligneliq] + Space(4 - Len(rst![DET numligneliq]) + 1) End If ================================ >> > Je dois taper ce bout de code autant de fois que j'ai de champs dans ma table.
Question : ====== >> > Pour alleger l'écriture du code, je pensais faire une boucle en récupérant
le nom de chaque champ de la table avec sa longueur.
Existe t'il un bout de code qui me permette de scanner et de récupérer le
nom de chaque champ d'une table avec sa longueur ?
Si vous avez une idée avant que je ne me lance dans le copier-coller, cela