Import export excel access

voix_off Messages postés 10 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 6 juin 2005 - 6 juin 2005 à 11:11
gwaheb Messages postés 9 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 18 juin 2011 - 18 juin 2011 à 02:03
Bonjour à tous !

J'écris ici car j'ai un gros souci ! Je suis débutant en VB, j'ai réalisé quelques petites macros, et là, dans le cadre d'un stage, je dois réaliser une macro sous EXCEL qui fasse la chose suivante :

- récupérer des données sous Excel, les envoyer dans une base de données ACCESS existante
- appliquer une requête (qui existe déjà) à ces données
- envoyer le résultat de cette requête vers une nouvelle feuille Excel

Je n'ai aucune idée de la manière dont il faut procéder pour commencer.
Merci de votre aide !

3 réponses

cs_Lochan Messages postés 13 Date d'inscription samedi 25 septembre 2004 Statut Membre Dernière intervention 15 juin 2005
6 juin 2005 à 11:55
Salut, je suis aussi débutante en VB mais je peut déjà te donner la méthode pour écrire dans une case d'Excel :



applic_excel.Cells(ligne, colonne).FormulaR1C1 = valeur



ou :

- applic_excel est le nom de ton objet excel

- ligne est le numéro de la ligne sur la quelle tu veux écrire (ca commence à 1)

- colonne idem pour la colonne :P

- valeur est ce que tu veux écrire ds la case



je pense que pour lire ca doit etre presque la même chose, j'ai jamais essayé.



pour le reste, je sais pas le faire...

Lo-chan
0
youpiyoyo Messages postés 539 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 14 juillet 2010
6 juin 2005 à 14:36
ou lala 347634 Lochan tu es tres loin de la solution, deja il a besoin d'exporter de EXCEL vers ACCESS et po l'inversse, d'autre part, si tu es dans vba excel cells(ligne,col) ="kelke chose suffit" bon c vrai apres tu as des formules etc..mais apres tu as l'aide et l'enregistreur de macro pour t'aider....

bref je vé te répondre 475289 voix_off:

le plus simple c utilisé la lib DAO, ADO, tu trouveras des trucs dessus sur google, ou yahoo..

braf il fo ke tu ailles kan meme activer la lib dans "outils" --> "references" --> "Microsoft DAO 3.6 object library"

bon chez moi c du 3.6 mais tu as d'autres version + recentes... apres si tu utilises ADO choisis ADO, moi je vé juste t'expliker le DAO, je penses ke c plus simple pour toi:

bon ds cette lib tu as plein de fonction ki vont te permettre d'exporter dans des bases, executer des requetes etc...

commence par:

pour importer de access
Dim db As Database
Dim Rs As Recordset
Dim Ws As Object
ouvrir:
Set db = Workspaces(0).OpenDatabase(Path, ReadOnly:=True)
Set Rs = db.OpenRecordset(Recordset2Open)

tu trouveras des éléements sur msdn pour comprendre comment ca fonctionne

si tu as besoin d'importer CopyFromRecordset

exporter:
Un objet Recordset représente les enregistrements d'une table
Set Db1 = DBEngine.OpenDatabase("C:\tabase.mdb")
Set Rs1 = Db1.OpenRecordset("taTable", dbOpenDynaset)

mettre elem ds table

With Rs1
.AddNew
.Fields(0) = ...
...
.Update

fé des boucles des trucs enfonction de ton projet

executer une requete de excel:
chSQL = "SELECT ..."
Db1.Execute chSQL
executer une existante
Set qdf = Db1.QueryDefs("requete")
qdf.Execute
qdf.Close

tu trouveras plein plein d'info sur le net entre DAO, et ADO,
tu pourras trouver des info ds msdn, et sur http://support.microsoft.com/default.aspx?scid=kb;en-us;150716

bon la réponse n'est pas encore assez complete mais je peux pas tout faire pour toi, et la je commence a etre gavé d'ecrire, donc j'espere ke ca va t'aider

++
youpi :)
0
gwaheb Messages postés 9 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 18 juin 2011
18 juin 2011 à 02:03
hola tjr pas compris comment je peu recurperer les donné d'excel pour les mettre dans ma table access deja existante :(
0
Rejoignez-nous