miss_aurel_8
Messages postés6Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention20 septembre 2005
-
19 sept. 2005 à 17:43
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 2006
-
20 sept. 2005 à 19:40
Bonjour,
Alors voila, je dois créer une appli VB 6.0 qui permette d'ouvrir une
base Access existante, puis d'envoyer des données se trouvant dans un
fichier .txt (séparées par des ; ) vers cette base de données. Mais je
ne suis pas experte et je ne sais pas comment faire ca !!
miss_aurel_8
Messages postés6Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention20 septembre 2005 20 sept. 2005 à 09:09
Salut,
Alors peut-etre suis-je trop bête mais je n'ai rien trouvé sur le site, pouvant expliquer mon problème.
Ou peut-être n'ai-je pas bien cherché.
A partir de mon appli (VB6) je dois pouvoir ouvrir une base de données Access 2003 existante, et ensuite, je dois également pouvoir envoyer des données à partir d'un fichier texte (.txt) (données séparées par des point-virgules) vers une table déjà créée dans cette meme base.
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200621 20 sept. 2005 à 19:40
Pour faire un transfert de fichier CSV dans une table de base de données, il y a plusieurs manières, en voici une :
Sub Transfert()
'Cocher "Microsoft Activex Data Objects 2.6 Library" ou 2.8 ? dans les références de ton projet
Dim cnn As New ADODB.Connection
Dim rst As New ADODB.Recordset
Dim NumFic As Integer
Dim buff As String
Dim t() As String
NumFic = FreeFile 'récupération d'un n° de fichier libre
'connexion à la base
cnn.Open "Provider=" & "Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & "c:\temp\bd1.mdb;"
'ouverture d'un recordset sur ta table
rst.Open "select * from table1", cnn, adOpenKeyset, adLockOptimistic
'ouverture du fichier texte
Open "c:\temp\essai.txt" For Input As #NumFic
'si la 1ère ligne contient des noms de champ, on la zappe
'Line Input #NumFic, buff
'lecture du fichier texte
Do While Not EOF(NumFic)
Line Input #NumFic, buff 'lecture d'une ligne
t = Split(buff, ";") 'transfert dans un tableau
'ajout d'un enregistrement
rst.AddNew
rst!champ1 = t(0)
rst!champ2 = t(1)
'...
rst.Update
Loop
'fermetures et libération de la mémoire
rst.Close
Set rst = Nothing
cnn.Close
Set cnn = Nothing
End Sub
A toi de modifier les chemins et nom de ta base et du fichier texte ainsi que le nom de la table et des champs.
-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?