begin process at 2012 02 13 20:59:26
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de Donnees

 > CREER SUPPRIMER UNE BASE UNE TABLE UN CHAMP LIER EXCEL À ACCESS AINSI QUE CREER UNE REQUETE AFIN DE L'EXECUTER

CREER SUPPRIMER UNE BASE UNE TABLE UN CHAMP LIER EXCEL À ACCESS AINSI QUE CREER UNE REQUETE AFIN DE L'EXECUTER


 Information sur la source

Note :
7 / 10 - par 12 personnes
7,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de Donnees Niveau :Débutant Date de création :17/06/2003 Date de mise à jour :17/06/2003 12:04:03 Vu :29 102

Auteur : ria94

Ecrire un message privé
Commentaire sur cette source (18)
Ajouter un commentaire et/ou une note

 Description

Creer supprimer une base access
Creer supprimer une table
creer un champs
Mon programme montre comment creer lier un fichier excel a access sous vb, creer donc la table a partir du fichier excel. Creer une requete ainsi que lui donnée les instructions en sql et l'executer
  

Source

  • 'On declare les variables
  • 'n oublier pas d ajouter la reference microsoft DAO 2.5/3.5 et microsoft access 8.0 object
  • Dim DB1 As Database
  • Dim TD as TableDef
  • Dim FLD as Field
  • Dim Db as Database
  • Dim qdf As QueryDef
  • Dim chSQL As String
  • 'on cree le fichier access ou vous le desirez
  • Set DB1 = CreateDatabase("c:\????\????\????.mdb", dbLangGeneral)
  • 'suprimer une base
  • Kill ("C:\????\????\????.mdb")
  • 'on ouvre la base creer
  • Set DB1 = OpenDatabase("c:\????.mdb")
  • 'on cree la table que j appelle ici plan_inventaire
  • Set TF = DB.CreateTableDef("plan_inventaire")
  • 'on creer ici 3 champ (produit, n_produit, nom_produit) dans la table plan prealablement ouverte
  • Set FLD = TF.CreateField("produit", dbInteger)
  • TF.Fields.Append FLD
  • Set FLD = TF.CreateField("n_produit", dbText, 20)
  • TF.Fields.Append FLD
  • Set FLD = TF.CreateField("nom_produit", dbText, 20)
  • TF.Fields.Append FLD
  • DB1.TableDefs.Append TF
  • 'fermeture de la base
  • DB1.close
  • '-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  • 'POUR LIER UN FICHIER EXCEL A ACCESS SOUS VB
  • 'ouverture de la table creer
  • Db.OpenCurrentDatabase ("c:\????\????\????.mdb")
  • 'Commande pour lier le fichier excel a access en creant une table que l'on appellera ici plan
  • DoCmd.TransferSpreadsheet acImport, 8, "plan_", (C:\????\????\????.xls), True, ""
  • 'Suppression de la table plan creer auparavant
  • DoCmd.DeleteObject acTable, "plan_inventaire"
  • Db.CloseCurrentDatabase
  • '-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  • 'CREER UNE REQUETE ET L EXECUTER
  • 'on ouvre notre base
  • Set Db= OpenDatabase("c:\????\????\????.mdb")
  • Db.QueryDefs.Refresh
  • ' Test d'existence de la requete si la requête NouvelleRequête existe, la supprime.Sinon la creer
  • For Each qdf In Db.QueryDefs
  • If qdf.Name = "NouvelleRequete" Then
  • Db.QueryDefs.Delete qdf.Name
  • End If
  • Next qdf
  • 'Creer n importe qu elle requete sous access puis toujours sous access cliquer sur modifier puis sur moder sql copier toute la chaine sql et placer la tous simplement entre les de guillemet
  • 'On stock notre chaine SQL dans chSQL (selection des champs + critere)
  • chSQL = "????????????votre chaine SQL????????????????ex: SELECT plan_.[Secteur_(Appli)], plan_.Lieu INTO plan From plan_ WHERE (((plan_.[Secteur_(Appli)])>0));??????????????????????????????????????????"
  • ' On cree la requete
  • 'Creation de la requete "nouvellerequete"
  • Set qdf = Db.CreateQueryDef("NouvelleRequete", chSQL)
  • qdf.Close
  • Db.Close
  • ' On execute la requete
  • 'ouvre la base
  • Db.OpenCurrentDatabase ("????\????\????\????.mdb")
  • 'On donne un nom a notre requete
  • stDocName = "NouvelleRequete"
  • On execute la requete
  • DoCmd.OpenQuery stDocName, acNormal, acEdit
  • Db.CloseCurrentDatabase
  • 'Et voila c est fini j espere que mon code pourra en aider quelqu un
'On declare les variables
'n oublier pas d ajouter la reference microsoft DAO 2.5/3.5 et microsoft access 8.0 object


Dim DB1 As Database
Dim TD as TableDef
Dim FLD as Field
Dim Db as Database
Dim qdf As QueryDef
Dim chSQL As String


'on cree le fichier access ou vous le desirez
Set DB1 = CreateDatabase("c:\????\????\????.mdb", dbLangGeneral)

'suprimer une base
Kill ("C:\????\????\????.mdb")

'on ouvre la base creer
Set DB1 = OpenDatabase("c:\????.mdb")

'on cree la table que j appelle ici plan_inventaire
Set TF = DB.CreateTableDef("plan_inventaire")

'on creer ici 3 champ (produit, n_produit, nom_produit) dans la table plan prealablement ouverte

Set FLD = TF.CreateField("produit", dbInteger)
TF.Fields.Append FLD

Set FLD = TF.CreateField("n_produit", dbText, 20)
TF.Fields.Append FLD

Set FLD = TF.CreateField("nom_produit", dbText, 20)
TF.Fields.Append FLD
DB1.TableDefs.Append TF

'fermeture de la base
DB1.close 



'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


'POUR LIER UN FICHIER EXCEL A ACCESS SOUS VB



'ouverture de la table creer
Db.OpenCurrentDatabase ("c:\????\????\????.mdb")

'Commande pour lier le fichier excel a access en creant une table que l'on appellera ici plan
DoCmd.TransferSpreadsheet acImport, 8, "plan_", (C:\????\????\????.xls), True, ""

'Suppression de la table plan creer auparavant
DoCmd.DeleteObject acTable, "plan_inventaire"

Db.CloseCurrentDatabase



'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

'CREER UNE REQUETE ET L EXECUTER


'on ouvre notre base
Set Db= OpenDatabase("c:\????\????\????.mdb")
Db.QueryDefs.Refresh
' Test d'existence de la requete  si la requête NouvelleRequête existe, la supprime.Sinon la creer
    For Each qdf In Db.QueryDefs
        If qdf.Name = "NouvelleRequete" Then
          Db.QueryDefs.Delete qdf.Name
       End If
Next qdf
    
    

'Creer n importe qu elle requete sous access puis toujours sous access cliquer sur modifier puis sur moder sql copier toute la chaine sql et placer la tous simplement entre les de guillemet 
'On stock notre chaine SQL dans chSQL (selection des champs + critere)
chSQL = "????????????votre chaine SQL????????????????ex: SELECT plan_.[Secteur_(Appli)], plan_.Lieu INTO plan From plan_ WHERE (((plan_.[Secteur_(Appli)])>0));??????????????????????????????????????????"


'                                  On cree la requete

'Creation de la requete "nouvellerequete"
Set qdf = Db.CreateQueryDef("NouvelleRequete", chSQL)
qdf.Close
Db.Close

'                                          On execute la requete

'ouvre la base
Db.OpenCurrentDatabase ("????\????\????\????.mdb")
'On donne un nom a notre requete
stDocName = "NouvelleRequete"
On execute la requete
DoCmd.OpenQuery stDocName, acNormal, acEdit
Db.CloseCurrentDatabase


'Et voila c est fini j espere que mon code pourra en aider quelqu un 
  



 Sources du même auteur

Source avec Zip Source avec une capture MOTEUR DE RECHERCHE QUI AFFICHE LES PHOTOS
Source avec Zip Source avec une capture PETIT MOTEUR DE RECHERCHE DE FICHIER EXCEL POUR DEBUTANT QUI...

 Sources de la même categorie

Source avec Zip Source avec une capture BIEN ADMINISTRER LES ETUDIANTS ET LEURS CÔTES par okosa
Source avec Zip VBA EXEL GESTION DE PERSONEL NOUVEAU CONTRAT DE TRAVAI par oudlarbi
Source avec Zip Source avec une capture CREATION D'UN OBJET D'ACCÈS AUX DONNÉES par okosa
Source avec Zip Source .NET (Dotnet) MISAHORAIRE par MdelM
Source avec Zip Source avec une capture BASEDEDONNEES,GESTIONDEMALADES,DATABASSE par shadkitenge

Commentaires et avis

Commentaire de ria94 le 07/07/2003 17:45:42

En cas de probleme ou d'incomprehension laisser un commentaire que je puisse améliorer ma source.

Commentaire de ria94 le 07/07/2003 17:45:42

En cas de probleme ou d'incomprehension laisser un commentaire que je puisse améliorer ma source.

Commentaire de tocatoca le 09/07/2003 11:31:23

C'est bien simple et explicite mais tu pourrais mettre ta source a jour en rajoutant des fonctions souvent utilisées tel que l'impression supprimer un champ et pas mal d'autre choses ....
Bonne continuation.

Commentaire de ria94 le 10/07/2003 17:43:30

Bientot je vais la mettre a jour

Commentaire de ria94 le 10/07/2003 17:45:07

Avec tous plein de fonction en plus tel que imprimer une table, modifier un champ faire tous ce qu'on veux avec access sous vb.

Commentaire de llefe le 21/08/2003 01:39:47

super
ce code fonctionne très avec asp
par contre l'ouverture de la base m'a créé un lock que
je n'arrive pas à supprimer ...
enfin c'est un détail.

Commentaire de RockmanX le 17/12/2003 12:11:51

ouais mais il y a un truc qui marche pas.
j'utilise access mais avec des tables liées et j'aimerais rajouter un champs dasn une des tables liées.
ca ne marche pas.
tu as une idée?

Commentaire de riverdance le 01/07/2004 17:27:50

c nuuuuuuuuuuulllllllllllllllllll et bonjour aussi

Commentaire de gourou52 le 29/07/2004 15:11:48

Je trouve ca vraiment jenial, mais suis très très novice.
B'est la premiere fois que jutilise access et vb et sql.

Je trouve ce code super bien fait mem si je doit chercher pourqoi j'ai une erreur 91 lors de la creation de la table, je voudrais importer un fichier txt dans une table et seul repere est des caractere speciaus style (ü) Si qu'elqu'un a une idee mercie beaucoup a tous ce site est super

Commentaire de gourou52 le 29/07/2004 15:13:07

Pardon pour les faut d’orthographe

Commentaire de addamsmercredi le 13/10/2004 11:11:22

DoCmd c'est un objet de quel type ?
Il n'est déclaré nulle part dans le code et moi Visual Basic ne connaît pas.

Commentaire de ricomiracle le 26/04/2005 10:31:53

Quand j'execute le code g une erreur:
Invalid outside procedure

sur le Set (le premier) pourkoi?
Desolé je debute ss VB

Commentaire de grayou2005 le 02/11/2005 13:40:24

salut
suis nouveau et je voudrais savoir comment récupérer le résultat de tes requetes pour pouvoir les traiter ...
je sais pas si je suis clair mais je souhaiterai récupérer le resultat d'une requete et effectuer des actions en fonction des valeurs obtenues par la requete et je patauge complètement

merci d'avance
@pluche

Commentaire de sbbois le 05/12/2005 08:56:40

salut Ria94, Bien le code. mais comment fait tu pour supprimer une table?

Commentaire de ria94 le 05/12/2005 15:25:57

Salut sbbois
Bon ca fait super longtemps que j'ai pas touché à ce code et que j'ai pas fait de vb
mais en relisant mon code vite fait j'ai pas testé mais je ferai comme ca :

Db.OpenCurrentDatabase ("????\????\????\????.mdb")
'On donne un nom a notre requete
stDocName = "DROP TABLE Nom_de_la_table" // ici tu mets t'as requete pour supprimer une table
'On execute la requete
DoCmd.OpenQuery stDocName, acNormal, acEdit
Db.CloseCurrentDatabase


Bonne chance
++

Commentaire de sbbois le 05/12/2005 15:29:45

Ok merci ria94.

Commentaire de black_ghost le 12/02/2006 17:48:16

merci bcp, je vais l'essaiyé et si quelqu'un sais comment copier une feuille excel vers une table access et merci. (voici mon email pour me proposé d'aide "silitix@yahoo.fr" merci d'avance).

Commentaire de kewgon le 28/06/2006 15:33:51

salut

chez moi ce code ne fonctionne pas :-(

quand je lance le programme sous excel (office 2003), il me dit sur la ligne

Dim DB1 As Database

type defini par l'utilisateur non defini !

il me manque surement quelque chose
aidez moi svp

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 1,123 sec (3)

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