Creer une bd avec un fichier texte et rechercher dedans
cs_rober
Messages postés86Date d'inscriptionvendredi 29 novembre 2002StatutMembreDernière intervention21 septembre 2010
-
9 déc. 2002 à 19:01
cs_JLB59
Messages postés140Date d'inscriptionjeudi 21 septembre 2000StatutMembreDernière intervention16 août 2012
-
28 févr. 2005 à 09:27
Bonjour,
Je voudrais creer une base de donnees avec un fichier texte qui est tabule avec des virgules,avoir l'affichage dans un tableau ,et effectuer une recherche d'une chaine et avoir en retour l'affichage sous forme de tableau de toutes les lignes ou se trouvent la chaine et la cerise sur le gateau pouvoir selectionner la ou les lignes afin d'effectuer un colle pour linseretion dans un autre fichier texte.
Merci de votre aide et de votre indulgence
roger.bernerd@wanadoo.fr
A voir également:
Creer une bd avec un fichier texte et rechercher dedans
yomm
Messages postés515Date d'inscriptiondimanche 17 février 2002StatutMembreDernière intervention10 mars 20083 11 déc. 2002 à 12:57
'Déja il fo créer la base de donnée
Dim wrkODBC As Workspace
Dim wrkjet As Workspace
Dim db As Database
Dim TaBase as string '(chemin complet de ta base)
'ex: c:\MaBase.mdb
Set wrkODBC = CreateWorkspace("ODBCWorkspace", "admin", "", dbUseODBC)
Workspaces.Append wrkODBC
DefaultType = dbUseJet
Set wrkjet = CreateWorkspace("", "admin", "")
Set db = wrkjet.CreateDatabase(TaBase,
dbLangGeneral)
db.Close
Set db = Nothing
Dim SQL As String
Dim ParamConnect As String
Dim VarConnect As Connection
On Error GoTo 0
Set wrkODBC = CreateWorkspace("ODBCWorkspace", "admin", "", dbUseODBC)
Workspaces.Append wrkODBC
DefaultType = dbUseJet
Set wrkjet = CreateWorkspace("", "admin", "")
Set db = wrkjet.OpenDatabase(TaBase)
'maintenant il faut créer une table dedans avec tes différent champ'vocabulaire : Champ Colonne Rubrique
SQL = "CREATE TABLE [RecupTxt] (Colonne1 varchar(2), " & _
"Colonne2 varchar(8), Colonne3 varchar(10));"
'varchar(8) signifie qu'il s'agit d'un texte de 8 caratère
db.Execute SQL
'pour le remplissage de la base à partir du fichier texte je te di ça après avoir manger.......
yomm
Messages postés515Date d'inscriptiondimanche 17 février 2002StatutMembreDernière intervention10 mars 20083 11 déc. 2002 à 14:13
'donc nous en étions au remplissage de la table
Dim table As Recordset
Dim Ligne As String
Dim texte As String
Dim Fichier as string 'ton fichier txt à "importer"
'rappel RecupText est le nom de ta table dans ta base
'rapel db c'est ta base
Set table = db.OpenRecordset("SELECT * FROM [RecupText]")
'*********************************
fichier = "c:\TonFichier.txt"
'*********************************
Open fichier For Input As #1
Do Until EOF(1) = True
Line Input #1, Ligne
table.AddNew
table![colonne1] = trim(left(ligne,instr(ligne,",")-1))
ligne = right(ligne,len(ligne)-instr(ligne,'",")
table![colonne2] = trim(left(ligne,instr(ligne,",")-1))
ligne = right(ligne,len(ligne)-instr(ligne,'",")
'*****************************************
'deux solution pour la dernière colonne
'1) ta chaine se fini par une ",":
table![colonne3] = trim(left(ligne,instr(ligne,",")-1))
'2) ta chaine ne se fini pa par une ","
table![colonne3] = trim(ligne)
table.Update
Loop
Close #1
table.Close
db.close
Set table = Nothing
set db = Nothing
'***************************************
'maintenant voyons un peu la recherche:
dim Base as database
dim Table as recodset
dim CheminBase as string 'chemin complet de ta base ex: c:\TaBase.mdb
dim Critere as string 'critere de ta recherche
'**************************************
cheminbase = "c:\TaBase.mdb
critere = "toto"
'**************************************
Set Base = Workspaces(0).OpenDatabase(CheminBase)
Set Table = Base.OpenRecordset("SELECT * FROM RecupText WHERE Colonne1 LIKE '*" & Critere & "*' OR Colonne2 LIKE '*" & Critere & "*' Colonne3 LIKE '*" & Critere & "*'")
'le résultat poura etre :
'tititoto
'tototata
'tutototu
'et cela dans n'importe kel colonne
'bref tu as maintenant un base selective ou au moins un des champs (colonnes)
'comporte l'expression de ton critère (ici c'est "toto")
'maintenant a toi dans faire ce que tu veux
'.....................
'J'espère t'avoir rendu service....n'hesite pas si t'as un problème
cs_JLB59
Messages postés140Date d'inscriptionjeudi 21 septembre 2000StatutMembreDernière intervention16 août 2012 28 févr. 2005 à 09:27
Salut Yomm,
Je suis tombé par hasard sur ton super code qui va me servir très vite.
Mais j'ai un p'tit blème !
Après l'avoir adapté (surtout le chemin) voilà le msg que je reçois quand je veux écrire dans la db à partir du fichier texte (que j'ai créé) :
"variable objet ou variable block with non définie"
Ca arrive à ce niveau :
Set Table = DB.OpenRecordset("SELECT * FROM [RecupText]")
Ce qui doit se passer après, j'en sais rien !
Comme j'apprends à manipuler les db, voudrais-tu m'aider et me dire quoi faire ?