begin process at 2010 03 22 00:28:07
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

base de donnée


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

base de donnée

vendredi 5 mai 2006 à 19:05:22 | base de donnée

inconnu2nulpar

slt, je voudrai savoir, comment sous access je peut remplir une table a partir d'un fichier text.txt. il faudrais que je crée une macro car le fichier .txt est sans cesse remis a jour, dc il faudrais que je crée une macro qui a la demande de l'utilisateur met à jours la table access.
 

En gros je voudrai avoir une macro qui remplis une table access depuis un fichier .txt

merci
vendredi 5 mai 2006 à 22:20:33 | Re : base de donnée

XtremDuke

Access a un un assistant pour l'importation de données externes au format txt. Si ca peut t'aider....
samedi 6 mai 2006 à 14:30:34 | Re : base de donnée

inconnu2nulpar

ouai mais cette assistant le fait qu'une fois. Moi il me faut une macro qui le fasse a chaque fois que je clic sur un bouton, qq un sait comment on fait?
samedi 6 mai 2006 à 19:33:30 | Re : base de donnée

metalcoder

Membre Club
salut, voici une solution a ton probleme

ouvre un nouveau projet VB avec trois boutons sur la feuille et colle le code dans ta feuille.

ajoute ensuite la reference suivante a ton projet (menu projet/reference et choisis microsoft activex data objects 2.5 ou superieur si tu as .

ensuite il te faut un fichier texte que j'ai appeler essai.txt (le nom doit etre identique si tu veut que cela marche)
il te faut une base access vide avec une table que j'ai appeler Table1 et qui possede un champs que j'ai appeler donnée. le champs "donnée" est au format texte avec une longueur de 255.

le fichier access doit s'appeler essai.Mdb et tout comme le fichier texte il faut qu'il soit située dans le meme repertoire ou tu sauvegardera ce petit programme.



'************CODE*************************
Public Ct As ADODB.Connection
Public rc As ADODB.Recordset

Private Sub Command1_Click()
Set rc = New ADODB.Recordset
rc.Open "Table1", Ct, adOpenKeyset, adModeReadWrite

Open App.Path & "\essai.txt" For Input As #1
While Not EOF(1)
Line Input #1, a
With rc
    .AddNew
    !Donnée = a
    .Update
End With
Wend
Close #1

MsgBox "Mise a Jour OK"

err:
If err.Number = 53 Then
MsgBox "Fichier essai.txt introuvable"
Exit Sub
End If

End Sub

Private Sub Command2_Click()
Set rc = New ADODB.Recordset
rc.Open "Table1", Ct, adOpenKeyset, adModeReadWrite
While Not rc.EOF
    rc.Delete
    rc.MoveNext
Wend

MsgBox "Table1 Effacée"
End Sub

Private Sub Command3_Click()
rc.Close
End
End Sub

Private Sub Form_Load()
On Error GoTo err
Set Ct = New ADODB.Connection

Ct.Provider = "Microsoft.Jet.Oledb.4.0"
Ct.ConnectionString = App.Path & "\Essai.Mdb"
Ct.Open

err:
If err.Number = -2147467259 Then
MsgBox "fichier essai.mdb introuvable"
End
End If

End Sub
samedi 6 mai 2006 à 20:47:40 | Re : base de donnée

inconnu2nulpar

Merci bcp, mais est ce que tu peut me mettre des commentaire pour que je puisse modifier ton prog, car mon fichier text a plusieur champs, il y aura une clé primaire et a coté séparé par une virgule ou un point virgule, une date, et dc je voudrais copier ces 2 champs ds ma table

samedi 6 mai 2006 à 21:36:44 | Re : base de donnée

metalcoder

Membre Club
Bon j'ai pas changé grand chose donc je te met juste le code qui a changé.

Public Ct As ADODB.Connection 'Declaration des variables pour se connecter en mode ADO
Public rc As ADODB.Recordset

Private Sub Command1_Click()
Set rc = New ADODB.Recordset 'Declaration d'une nouvelle connection ADO
rc.Open "Table1", Ct, adOpenKeyset, adModeReadWrite 'Ouverture de la table "Table1" de la base essai.Mdb

Open App.Path & "\essai.txt" For Input As #1 'Ouverture du fichier texte en lecture
While Not EOF(1) 'Tant que ce n'est pas la fin du fichier texte
Input #1, a, b 'la valeur a contient la premiere valeur et B la deuxieme valeur du fichier texte
With rc        'les valeurs du fichier texte doivent etre séparer par des ,
    .AddNew 'On ajoute un enregistrement dans la table1
    !Index = a 'Le champs Index prend la valeur de A
    !Heure = b 'Le champs Heure prend la valeur de B
    .Update
End With
Wend
Close #1 'On ferme le fichier texte

MsgBox "Mise a Jour OK"

err:
'Si le fichier essai.txt n'est pas trouvé on affiche un message
If err.Number = 53 Then
MsgBox "Fichier essai.txt introuvable"
Exit Sub
End If

End Sub

Private Sub Command2_Click()
Set rc = New ADODB.Recordset 'Declaration d'une nouvelle connection ADO
rc.Open "Table1", Ct, adOpenKeyset, adModeWrite 'Ouverture de la table "Table1" en ecriture seulement
While Not rc.EOF 'On boucle tant que la fin n'est pas arrivée
    rc.Delete 'Effacement de l'enregistrement courant
    rc.MoveNext 'On passe a l'enregistrement suivant
Wend

MsgBox "Table1 Effacée"
End Sub

Private Sub Command3_Click()
rc.Close 'Fermeture de la connection ADO
End
End Sub

Private Sub Form_Load()
On Error GoTo err
Set Ct = New ADODB.Connection 'Declaration

Ct.Provider = "Microsoft.Jet.Oledb.4.0"
Ct.ConnectionString = App.Path & "\Essai.Mdb" 'Chemin ou se trouve la base access
Ct.Open

err:
If err.Number = -2147467259 Then
MsgBox "fichier essai.mdb introuvable"
End
End If

End Sub
dimanche 7 mai 2006 à 12:26:51 | Re : base de donnée

inconnu2nulpar

ok merci bcp ! et au fait est ce que c'est possible de suprimé les données que j'ai écrite ds la table access du fichier text.txt? et aussi comment je peut tester ma table access pour que lorsqu'il y a des doublons, j'écrase l'ancien et je mais la nouvelles donner ds ma table ?
dimanche 7 mai 2006 à 12:28:35 | Re : base de donnée

inconnu2nulpar

Et aussi, ds ton programme losrque tu met "ajoute un champs ds la table " cela ajoute un champs sans suprimer ceux qui existe déja ?
dimanche 7 mai 2006 à 12:38:38 | Re : base de donnée

inconnu2nulpar

excuse moi d'écrire plusieur msg , mais pourquoi tu utilise le bouton 2? pourquoi tu efface la table1?

je sait pas si c'est possible, mais je voudrais rajouter a la suite les champs qui se trouvent ds mon fichier text.txt.

 et aussi à la place des virgule il faudrai que j'utlise qqch d'autre car l'assistant access ne veut pas prendre les virgyule comme séparateur car il exporte des date/heure, je sait pas si c'est importatnt ds ton programme ça. 
dimanche 7 mai 2006 à 13:11:17 | Re : base de donnée

metalcoder

Membre Club
le bouton 2 sert juste a effacer toute la table1 si tu en a besoin. Je vais pas te faire le programme completement, je te donne juste une piste ;-))

le probleme c'est que tu va mettre ton fichier texte dans la table1 mais si tu recommence aussitot apres tu va ajouter a la suite, ce qui va faire plein de doublons dans ta table, c'est pour ca que j'avais mis le bouton 2.

mon programme tel qu'il est fait prend la virgule comme separateur

ex: 154,15/05/2006
 
tu va avoir le chiffre 154 dans le champs index de la table1
et 15/05/2006 dans le champs heure de la table1
 
essaye de le modifier, il y a que comme ca que tu va comprendre


Metalcoder

1 2

Cette discussion est classée dans : fichier, access, base, macro, table


Répondre à ce message

Sujets en rapport avec ce message

Renommer table dans access [ par Spawn3107 ] Bonjour tout le monde,J'ai un petit probleme avec ma base de donnée. Je veux renommer ma table dans la base à l'aide d'un bouton. J'ai fait une macro copier table dans une autre base access [ par lezardjet ] BonjourJ'ai chercher sur le forum mais les réponses que je trouve sont trop confuse.J'ai une table. 2 bases. Et je veux copier ma table dans l'autre b pourquoi choisir de developper sous vb6 pour acceder à une base access ? [ par runescape ] Bonjour à toutes et tous,Je suis confronté à un petit problème pour lequel je souhaiterai des avis professionnels.Un client me dit qu'il a developpé s excel vers access [ par swtwarrior ] A l'aiiiiiiiiideeeeeeee!!Tout d'abord bonjour a tous,voila j'ai un problem. Je travaille avec un software fait maison qui va chercher des informations Problème avec des fichiers lies d'une base de données ACCESS [ par manujelena ] J'utilise dans mon application une source de données provenant d'une base de données ACCESS. Dans cette base de données  j'ai des tables que j'ai créé connection base access [ par mtctls ] salut tout le monde;j'ai une base access comportant deux table article et fournisseur et une interface pour chaque table avec chaqu'une des option:ajo DataTable et access [ par narvis25 ] Bonjour,je developpe une appliaction sous vb.net qui est connectée à une base access.Je veux vider une table de la base , je vide donc la datatable co Chargement Table Access très important [ par stimp4ck ] Bonjour, je souhaite charger une table Access assez importante (203 champs) avec le contenu d'un fichier assez important (+ de 600 lignes) par macro.L Importer fichier txt dans une table access [ par zouzou333 ] Bonjour tous le monde, voila j'ai un petit soucis.Dans la suite de mon projet je dois faire en sorte que :-Mon script vbs doit importe automatiquement Créer et remplir une base Access avec VB 6.0 [ par jue26 ] Bonjour à tous, Voila j'ai un projet qui consiste à récupérer des données répertoriées dans un fichier xml avec VB 6.0. Et ensuite je dois les écrire


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,452 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales