Accueil > Forum > > > > base de donnée
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
|
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
|
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
|
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
|
|
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
Livres en rapport
|
Derniers Blogs
[RIA SERVICES] INCLUDE ET DOMAINDATASOURCE[RIA SERVICES] INCLUDE ET DOMAINDATASOURCE par Audrey
Dans un de mes articles précédents , j'avais parlé des DomainDataSource avec RIA Services dans le cas d'une interface Maître - Détail. Dans le même principe, je vais parler d'une autre manière de mettre en forme ce cas d'interface avec RIA Services. Et po...
Cliquez pour lire la suite de l'article par Audrey ZUNE : VERSION ZUNE SOFTWARE V 4.2 ET LA SOCIALISATIONZUNE : VERSION ZUNE SOFTWARE V 4.2 ET LA SOCIALISATION par ROMELARD Fabrice
Une des nouveautés de la version V 3.0 était l'apparition de l'onglet Social qui ne fonctionnait que si le MarketPlace était activé sur son poste. Cela limitait donc son intérêt, car hors du cadre commercial USA-CANADA, peu de monde trouva...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice PRATIQUE DE SILVERLIGHT PAR ERIC AMBROSIPRATIQUE DE SILVERLIGHT PAR ERIC AMBROSI par MPOWARE
Je viens de finir la lecture du dernier livre d'
Eric Ambrosi
éditions PEARSON
Son livre donne une approche pratique de Silverlight qui sera aussi bien comprise par le développeur que par le designeur.
Tous les aspects du développement RIA sont abor...
Cliquez pour lire la suite de l'article par MPOWARE APPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NETAPPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NET par odewit
2 déclinaisons de Silverlight et 2 déclinaisons de Mono permettent dorénavant (ou permettront prochainement) de développer des applications .NET mobiles pour les principales plates-formes du marché :
Silverlight pour Symbian, basé sur Silverlight 2...
Cliquez pour lire la suite de l'article par odewit ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2 par ROMELARD Fabrice
Avec la dernière génération du lecteur MP3 de Microsoft, le ZUNE HD, Microsoft a publié une nouvelle version du logiciel pour PC. Ainsi, je me suis décidé à installer celle-ci sur mon Tablet PC ACER, comme toujours le logiciel est donc tél...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|