Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/01/2012, 18h00   #1
Invité de passage
 
Homme François Arnaud
Responsable des études
Inscription : janvier 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme François Arnaud
Localisation : France, Ain (Rhône Alpes)

Informations professionnelles :
Activité : Responsable des études
Secteur : Transports

Informations forums :
Inscription : janvier 2012
Messages : 4
Points : 0
Points : 0
Par défaut Exporter un état formaté en TXT

"Bonjour"
J'ai un état que je souhaite exporter en .TXT. Si j'utilise la fonction Exporter d'Access 2003 il me produit un état TXT qui intercale des lignes blanches inopinément.
Par ailleurs, j'aimerais pouvoir maîtriser la largeur des colonnes de l'état TXT.
Comment faire pour paramétrer le format du doc TXT depuis Access ?

"Merci"
Francois Arnaud est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2012, 18h59   #2
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
L'export de rapport en mode texte se base sur le driver de l'imprimante (probablement générique texte) et ne génère généralement pas grand chose d'utilisable

Si tu veux exporter des données utilise l'exportation de requête ou de table. Tu n'auras pas d'entête de page et autres mais auras plus de contrôle sur le format du fichier généré.

Accessoirement pourquoi fais-tu un export texte d'un état ? il y a peut-être d'autres méthodes pour satisfaire ton besoin.

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2012, 09h45   #3
Invité de passage
 
Homme François Arnaud
Responsable des études
Inscription : janvier 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme François Arnaud
Localisation : France, Ain (Rhône Alpes)

Informations professionnelles :
Activité : Responsable des études
Secteur : Transports

Informations forums :
Inscription : janvier 2012
Messages : 4
Points : 0
Points : 0
Par défaut réponse à Marot_r

J'ai besoin de générer un fichier TXT car l'utilisateur final du document requiert un fichier TXT calibré au caractère près de manière impérative.
D'où mon problème, bien sûr !
Merci quoi qu'il en soit.
Francois Arnaud est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2012, 13h47   #4
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
Je m'y attendais un peu :-).

Comme je l'ai dit précédement tu peux probablement exporter une requête ou une table plutôt qu'un état.

Mais pour en être certain, peux-tu donner quelques détails de plus, même sommaire, sur la structure attendue ?

Sinon tu peux aussi écrire un petit bout de code VBA qui va te créer le fichier texte de tes rèves. C'est assez simple et tu as un contrôle total sur le format et le positionnement des données. Je préfère cette méthode car l'exportation de table ou requête a tendance à en faire un peu à sa tête.

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2012, 17h35   #5
Invité de passage
 
Homme François Arnaud
Responsable des études
Inscription : janvier 2012
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme François Arnaud
Localisation : France, Ain (Rhône Alpes)

Informations professionnelles :
Activité : Responsable des études
Secteur : Transports

Informations forums :
Inscription : janvier 2012
Messages : 4
Points : 0
Points : 0
Par défaut nouvelle réponse à Marot R

Bonsoir,

En effet, l'état que je cherche à produire est destiné à une banque et la position de chaque caractère sur le fichier txt se doit d'être rigoureuse, je suis donc preneur d'un bout de code VBA mais j'avoue par ailleurs que je n'en fais pas tous les jours et que je souhaiterais avoir une méthode pour ce faire.
Si tu as, je suis preneur, merci d'avance.
Francois Arnaud est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2012, 19h08   #6
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
As-tu un seul type d'enregistrement dans ton fichier texte ou plusieurs types ?

Exemple de fichier à plusieurs types :
Entete
Detail1, Valeur1
TotalGeneral
exemple de programme créant ce fichier

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
dim numFic as integer:numFic=freefile()
dim nomFic as string:nomFic="C:\TonChemin\TonFichier.txt"
 
open nomFic as #numFic for output
 
dim db as dao.database:set db=currentdb
 
 
print #numFic,"Entete"
 
dim total as double
 
dim r as dao.recordset:set r=db.openRecordset("TaSource")
 
do while not r.eof
   print #numfic, r![Detail];" "; r![Valeur]
   total=total+r![valeur]
   r.movenext
loop
 
print #numFic,Total
r.close:set r=nothing
set db=nothing
 
close #numFic
quand tu fais le print #numFic tu peux utiliser la commande Format() pour mettre tes données au format désirer. Tu peux aussi utiliser Space$() pour ajouter des espaces. Len() est très utile aussi.

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h03.


 
 
 
 
Partenaires

Hébergement Web