OVH Cloud OVH Cloud

création d'un fichier texte

4 réponses
Avatar
Eric
bonjour

je suis sur que c'est tout simple, mais ne sachant pas le faire, cela me
pose un problème.

afin de me faciliter une tâche rébarbative, je souhaite me faire un
exécutable qui me permettrait de faire les choses suivantes :

1- créer un fichier texte dont le nom serait du type
monnom_yyyymmjj_hhmm.txt
2- remplir ce fichier avec des infos provenant d'une base de données
(il s'agit d'une base de données toute simple, contenant des adresses et des
noms)

un grand merci si quelqu'un peut m'aider.

meilleures salutations

eric

--

4 réponses

Avatar
Arnaud
Bonjour,

Voici l'essentiel de votre demande :

////////////////////////////////
Dim sNomFichier As String
Dim iTotalRecords As Integer
Dim iIndx As Integer
Dim iNumberOfFields As Integer
Dim NumFichier As Integer
iTotalRecords = 0
iIndx = 0
iNumberOfFields = 0
NumFichier = 0

'Récupération d'un handle libre
NumFichier = FreeFile

'Ouverture du fichier de sortie
sNomFichier = "ladatequiminteresse.txt"
Open "C:monRepmonSousRep" & sNomFichier For Output As #NumFichier

iNumberOfFields = RS.Fields.Count - 1 '<= RS représente le recordset dont on
veut exporter les données
RS.MoveFirst 'positionnement au début du recordset
'export des données avec (") comme délimiteur et (;) comme séparateur
Do Until RS.EOF
iTotalRecords = iTotalRecords + 1
For iIndx = 0 To iNumberOfFields
If (IsNull(RS.Fields(iIndx))) Then
Print #NumFichier, Trim$(Chr(34));
Print #NumFichier, Trim$(Chr(34)); ";"; 'uniquement le
séparateur si null
Else
If iIndx = iNumberOfFields Then
Print #NumFichier, Trim$(Chr(34));
Print #NumFichier, Trim$(CStr(RS.Fields(iIndx)));
Trim$(Chr(34));
Else
Print #NumFichier, Trim$(Chr(34));
Print #NumFichier, Trim$(CStr(RS.Fields(iIndx)));
Trim$(Chr(34)); ";";
End If
End If
Next
Print #NumFichier,
RS.MoveNext
'DoEvents <= usage à modérer dans une boucle
Loop
'Fermeture du fichier et libération du handle
Close #NumFichier
////////////////////////////////

Bonne journée,
--
Arnaud,
http://cerbermail.com/?CMJMEZByvW





"Eric" a écrit dans le message de
news:%233vC6a8$
bonjour

je suis sur que c'est tout simple, mais ne sachant pas le faire, cela me
pose un problème.

afin de me faciliter une tâche rébarbative, je souhaite me faire un
exécutable qui me permettrait de faire les choses suivantes :

1- créer un fichier texte dont le nom serait du type
monnom_yyyymmjj_hhmm.txt
2- remplir ce fichier avec des infos provenant d'une base de données
(il s'agit d'une base de données toute simple, contenant des adresses et


des
noms)

un grand merci si quelqu'un peut m'aider.

meilleures salutations

eric

--





Avatar
X
Bonjour, voici un première moitié, tu dis "1- créer un fichier texte
dont le nom serait du type
monnom_yyyymmjj_hhmm.txt", soit:


Dim p1 As long
Dim nom_fichier as string
'
ChDrive App.Path
ChDir App.Path
p1 = FreeFile
nom_fichier = "nom" & "_" & anMoisJour & "_" & hhMn & ".txt"
Open nom_fichier For Append As p1
Close p1
'------------fichier créé-----------


"Eric" a écrit dans le message de news:
%233vC6a8$
| bonjour
|
| je suis sur que c'est tout simple, mais ne sachant pas le faire, cela me
| pose un problème.
|
| afin de me faciliter une tâche rébarbative, je souhaite me faire un
| exécutable qui me permettrait de faire les choses suivantes :
|
| 1- créer un fichier texte dont le nom serait du type
| monnom_yyyymmjj_hhmm.txt
| 2- remplir ce fichier avec des infos provenant d'une base de données
| (il s'agit d'une base de données toute simple, contenant des adresses et
des
| noms)
|
| un grand merci si quelqu'un peut m'aider.
|
| meilleures salutations
|
| eric
|
| --
|
|
|
Avatar
Eric
un grand merci ca fonctionne

eric
"Arnaud" a écrit dans le message de
news:ej0d7J9$
Bonjour,

Voici l'essentiel de votre demande :

////////////////////////////////
Dim sNomFichier As String
Dim iTotalRecords As Integer
Dim iIndx As Integer
Dim iNumberOfFields As Integer
Dim NumFichier As Integer
iTotalRecords = 0
iIndx = 0
iNumberOfFields = 0
NumFichier = 0

'Récupération d'un handle libre
NumFichier = FreeFile

'Ouverture du fichier de sortie
sNomFichier = "ladatequiminteresse.txt"
Open "C:monRepmonSousRep" & sNomFichier For Output As #NumFichier

iNumberOfFields = RS.Fields.Count - 1 '<= RS représente le recordset dont


on
veut exporter les données
RS.MoveFirst 'positionnement au début du recordset
'export des données avec (") comme délimiteur et (;) comme séparateur
Do Until RS.EOF
iTotalRecords = iTotalRecords + 1
For iIndx = 0 To iNumberOfFields
If (IsNull(RS.Fields(iIndx))) Then
Print #NumFichier, Trim$(Chr(34));
Print #NumFichier, Trim$(Chr(34)); ";"; 'uniquement le
séparateur si null
Else
If iIndx = iNumberOfFields Then
Print #NumFichier, Trim$(Chr(34));
Print #NumFichier, Trim$(CStr(RS.Fields(iIndx)));
Trim$(Chr(34));
Else
Print #NumFichier, Trim$(Chr(34));
Print #NumFichier, Trim$(CStr(RS.Fields(iIndx)));
Trim$(Chr(34)); ";";
End If
End If
Next
Print #NumFichier,
RS.MoveNext
'DoEvents <= usage à modérer dans une boucle
Loop
'Fermeture du fichier et libération du handle
Close #NumFichier
////////////////////////////////

Bonne journée,
--
Arnaud,
http://cerbermail.com/?CMJMEZByvW





"Eric" a écrit dans le message de
news:%233vC6a8$
> bonjour
>
> je suis sur que c'est tout simple, mais ne sachant pas le faire, cela me
> pose un problème.
>
> afin de me faciliter une tâche rébarbative, je souhaite me faire un
> exécutable qui me permettrait de faire les choses suivantes :
>
> 1- créer un fichier texte dont le nom serait du type
> monnom_yyyymmjj_hhmm.txt
> 2- remplir ce fichier avec des infos provenant d'une base de données
> (il s'agit d'une base de données toute simple, contenant des adresses et
des
> noms)
>
> un grand merci si quelqu'un peut m'aider.
>
> meilleures salutations
>
> eric
>
> --
>
>
>





Avatar
Eric
un grand merci

Eric
"X" <.> a écrit dans le message de
news:eGIKaP9$
Bonjour, voici un première moitié, tu dis "1- créer un fichier


texte
dont le nom serait du type
monnom_yyyymmjj_hhmm.txt", soit:


Dim p1 As long
Dim nom_fichier as string
'
ChDrive App.Path
ChDir App.Path
p1 = FreeFile
nom_fichier = "nom" & "_" & anMoisJour & "_" & hhMn & ".txt"
Open nom_fichier For Append As p1
Close p1
'------------fichier créé-----------


"Eric" a écrit dans le message de news:
%233vC6a8$
| bonjour
|
| je suis sur que c'est tout simple, mais ne sachant pas le faire, cela me
| pose un problème.
|
| afin de me faciliter une tâche rébarbative, je souhaite me faire un
| exécutable qui me permettrait de faire les choses suivantes :
|
| 1- créer un fichier texte dont le nom serait du type
| monnom_yyyymmjj_hhmm.txt
| 2- remplir ce fichier avec des infos provenant d'une base de données
| (il s'agit d'une base de données toute simple, contenant des adresses et
des
| noms)
|
| un grand merci si quelqu'un peut m'aider.
|
| meilleures salutations
|
| eric
|
| --
|
|
|