Mr Capone
Messages postés21Date d'inscriptionvendredi 21 janvier 2005StatutMembreDernière intervention19 juin 2005
-
25 janv. 2005 à 09:31
apaulux
Messages postés73Date d'inscriptionmardi 16 novembre 2004StatutMembreDernière intervention 2 octobre 2009
-
25 janv. 2005 à 10:33
Bonjour la post que j'ai fait hier a bugger désolé...
Alors je m'explique, je cherche a récuperer des données depuis un
fichier *.txt et de les balances directement dans ma base Sql, j'ai un
debut de code, mais je bloque pas mal pour envoyer les données dans ma
table...
voici mon code
Sub extraction()
Dim chaine As String
Dim i As Integer
Dim req As String
Dim cnx As ADODB.Connection
Set cnx = New ADODB.Connection
'Chaine de connexion a la base fraflo de sql server
Open "C:\Documents and Settings\administrateur\Bureau\essaie.txt" For Input As #1
Do While Not EOF(1)
'extrait les données du fichier et les met dans "chaine"
Input #1, chaine
'recupération de la 1ere valeur, ";" est le séparateur
zone.Text = Split(chaine, ";")(i)
i = i + 1
'début de l'insertion
cnx.BeginTrans
'requete d'insertion
req = "Insert into test (col001,col002,col003) values (oue ,' BB ',' CC ')"
'exécution de la requete
cnx.Execute req
cnx.CommitTrans
Loop
'fermeture du fichier *.txt
Close #1
'fermeture de la connexion
cnx.Close
End Sub
Mon probleme intervient quand
j'insere j'aimerait inséré les données récupéré dans une variable, ici
je les recupere dans un zone de texte, mais je n'arrive pas non plus a
balancer cette information... si quelqun peut m'aider
Dim DB As DAO.Database, RS As DAO.Recordset,EnSource As Variant
Set DB = Application.CurrentDb
Set RS = DB.OpenRecordset("coco", DB_OPEN_TABLE)
Open "C:\Documents and Settings\paul\Bureau\coco.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, EnSource
RS.AddNew
RS("Code")=Mid(EnSource, pos_1,LG_1)
RS("Cont")=Mid(EnSource, pos_2,LG_2)
RS("Fonct")=Mid(EnSource, pos_3,LG_3)
RS("Adre")=Mid(EnSource, pos_4,LG_4)
RS.Update
RS.Move 0, RS.LastModified
Loop
Close #1
RS.Close
End Sub
Dim RS As Recordset, tdfloop As TableDef, fldLoop As Field
Set DB = OpenDatabase("C:\Documents and Settings\paul\Bureau\Comptoir.mdb", False, gnReadOnly, sConnect)
Set RS = DB.OpenRecordset("coco")
With RS
Do
For Each fldLoop In RS.Fields
longueur = Len(RS("Code'))
Nombre_de_Blanc = LLG_1 - longueur
blanc = Space * Nombre_de_Blanc
données = données "(RS("Code")) + blanc
Mr Capone
Messages postés21Date d'inscriptionvendredi 21 janvier 2005StatutMembreDernière intervention19 juin 2005 25 janv. 2005 à 09:53
Euh, merci mais moi je doit balancer ça dans une base Sql en
ADO... De plus les valeurs que j'extrait de mon fichier texte
n'ont pas toute la même taille, et sont séparé par des ";"...