Importation de excel à Base de données Access deja établie

Résolu
tchoo83 Messages postés 42 Date d'inscription mercredi 31 mars 2004 Statut Membre Dernière intervention 27 octobre 2004 - 2 sept. 2004 à 16:18
tchoo83 Messages postés 42 Date d'inscription mercredi 31 mars 2004 Statut Membre Dernière intervention 27 octobre 2004 - 3 sept. 2004 à 20:56
Hello à tout le monde...

Je parcours assez souvent ce forum depuis que je suis en stage en entreprise dans son service informatique et c'est avec plaisir que à mon tour, je demande de l'aide.

Ma mission est de faire a terme une application web. (mais ça j'ai pas a le faire)

Ce que je dois faire exactement est une application VB qui emule un site intranet (plutot un outil qu'un site mais dispo via intranet de l'entreprise)

Je ne suis qu'en premiere année en ecole d'informatique (le bac jlé eu l'année derniere) donc VB et moi ça fais encore 2.

L'appli doit lister l'ensemble de tous les sites intranet de l'entreprise et leurs details.
Pour l'instant tt ceci existe sous forme de fichiers excel.

Mais ce n'est pas un seul fichier excel qui repertorie tous les sites et ts les details sous forme de tableau
En fait, il y a un fichier excel par site avec toutes les données dans un tableau. Et tous les fichiers excel (fiches de sites) ont la meme 'nomenclature' donc ont le meme tableau sous la meme forme, mais les données sont differentes

Mon probleme, c'est que jai une base de donnée (assez complexe) qui est deja établie sur ACCESS avec une dizaine de table dedans ! ( les champs etant deja etablis aussi dans mes tables....)

Je cherche donc un moyen de pouvoir transferer les données de chaque fiche excel, dans une ligne (sur chaque table donc) de ma base de données access. et ainsi pouvoir le faire avec toutes les fiches de sites.

et mes competences depassent le stade d'un belle mise en forme grahique sur VB (le codage et la prog, je me debrouille, mais je debute...)

SI quelqu'un a une solution ça serait sympa....

Une fois ce probleme réglé, je penses que j'aurais d'autres questions...mais la je bloque vraiment la dessus...

Merci D'avance

Tchoo

7 réponses

cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
2 sept. 2004 à 18:27
Premiérement pour Ouvrir ton fichier EXCEL :
Coches...Projet Références Microsoft Excel XX Object Library

' Ouvre l'application Excel
Set MonXl = CreateObject("Excel.Application") ' Ceci initialise la variable et charge Excel en arrière plan
MonXl.Visible = True 'Rend Excel visible...
MonXl.UserControl = True
' Ouvre MonFichier
MonXl.Workbooks.Open FileName:="C:\MonFichier.xls"

It@li@
3
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
2 sept. 2004 à 18:39
Deuxiémement pour Ouvrir la Base
Coches...Projet Références Microsoft DAO XX Object Library

Set Db = OpenDatabase("C:\MaBase.mdb") ' Définition base de donnée
Set Req = Db.OpenRecordset("SELECT * FROM TaTable")
Req.AddNew
Req(1)= MonXl.Range("B4").Value' Copie les valeurs
Req(2)=MonXl.Range("B5").Value
Req.Update
Set Req=Nothing
Set Db=Nothing

It@li@
3
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
3 sept. 2004 à 16:24
1) Pour la seconde Table :

Set Req = Db.OpenRecordset("SELECT * FROM TaTable")
Req.AddNew
Req(1)= MonXl.Range("B4").Value' Copie les valeurs
Req(2)=MonXl.Range("B5").Value
Req.Update
Set Req=Nothing
<s>Set Db=Nothing</s>

Set Req = Db.OpenRecordset("SELECT * FROM TaTable2")
Req.AddNew
Req(1)= MonXl.Range("B4").Value' Copie les valeurs
Req(2)=MonXl.Range("B5").Value
Req.Update
Set Req=Nothing
Set Db=Nothing

Tu fermes la connexion qu'a la Fin..avec 1 seul Set Db=Nothing

2) Pour une Autre Feuille :

With MonXl.ActiveWorkbook.Worksheets("Feuil2")
Req(1)=.Range("B3").Value
Req(2)=.Range("B4").Value
Req(3)=.Range("E3").Value
End With

It@li@
3
tchoo83 Messages postés 42 Date d'inscription mercredi 31 mars 2004 Statut Membre Dernière intervention 27 octobre 2004
2 sept. 2004 à 18:49
MERCI Beaucoup pour tes réponses mais y a t'il une suite ????

Sinon je tapes cela dans le code d'un projet VB, et pour le lancer ça se passe comment?

Merci encore !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
2 sept. 2004 à 19:10
Non pas de Suite...

Tu mets tous le Code dans l'evenement Cliuck d'un Bouton par Exemple.

It@li@
0
tchoo83 Messages postés 42 Date d'inscription mercredi 31 mars 2004 Statut Membre Dernière intervention 27 octobre 2004
3 sept. 2004 à 16:04
SUPER ça marche IMPEC, je te remercie vraiment beaucoup, grace à toi je peux avancer dans mon projet :-D

Cependant, juste une ou deux petites question que je l''espere tu vas repondre très rapidement.

1 ) Lorsque je dois rentrer les informations ds une autre table faut il faire comme cela?

Set Req = Db.OpenRecordset("SELECT * FROM TaTable")
Req.AddNew
Req(1)= MonXl.Range("B4").Value' Copie les valeurs
Req(2)=MonXl.Range("B5").Value
Req.Update
Set Req=Nothing
Set Db=Nothing

Set Req = Db.OpenRecordset("SELECT * FROM TaTable2")
Req.AddNew
Req(1)= MonXl.Range("B4").Value' Copie les valeurs
Req(2)=MonXl.Range("B5").Value
Req.Update
Set Req=Nothing
Set Db=Nothing

?????

2) Si des données se trouvent sur un classeur excel avec plusieurs feuilles (sheet), comment faire, pour passer aux autres feuilles avec le code, car la il me prends les informations seulement de la premiere feuille.

Tu peux assembler les deux reponses ensemble si possible??

Merci Beaucoup

:big)
0
tchoo83 Messages postés 42 Date d'inscription mercredi 31 mars 2004 Statut Membre Dernière intervention 27 octobre 2004
3 sept. 2004 à 20:56
MAGNIFIQUE, je te remercie vraiment beaucoup, c'est super sympa de m'aider et d'avoir si bien compris mon probleme posé !

@+
0
Rejoignez-nous