Recherche macro pour ouvrir Access

Résolu/Fermé
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016 - Modifié par ^Abel^ le 7/04/2015 à 13:00
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016 - 10 avril 2015 à 13:43
Bonjour à tous,

Je suis à la recherche d'une macro qui depuis un classeur Excel ouvre une base Access.
Pouvez-vous m'aider?
Cdt Fagots

11 réponses

f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711
7 avril 2015 à 13:12
Bonjour,

un classeur Excel ouvre une base Access Qu'entendez-vous par ouvrir ????
0
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
7 avril 2015 à 13:15
Bonjour,
Ouvrir cela veut dire accéder à la base access. ceci afin d'éxécuter certaine tache dans cette base.

Cdt
0
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711
Modifié par f894009 le 7/04/2015 à 13:38
Re,

un exemple de connexion:

'pensez a ajouter:
'outil:reference DAO x.x Object Library
'ou
'Microsoft Access xx.x Object Library
Public conn As Object  'ADODB.Connection
Public rs  As Object   'ADODB.Recordset

Sub Connecte_base_Access()
    Dim Chemin_Base
  
    Set conn = CreateObject("ADODB.Connection")
    Set rs = CreateObject("ADODB.recordset")
  
    Nom_base = "Equipement_test.accdb"
    Chemin_Base = ThisWorkbook.Path & "\" & Nom_base
    'chaine de connexion 2007
    'connstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Chemin_Base
    'chaine de connexion 97-2013
    connstring = "DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=" & Chemin_Base
    'cn.ConnectionString = "DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};Data source=C:\Users\PC\Documents\Base de données1.accdb"
    'Connexion a la base
  conn.Open connstring
  
  Sql = "select Matricule from Redacteur order by Matricule asc"
  rs.Open Sql, conn, 3, 3
  rs.MoveFirst
  
  Do Until rs.EOF
    DoEvents
    Combo_Matricule.AddItem (rs.Fields("Matricule"))
    rs.MoveNext
  Loop
  rs.Close
End Sub


A+
0
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
7 avril 2015 à 13:47
Bonjour, ce bloque au niveau " conn.Open connstring"
voilà ce que j'ai copier
Sub Connecte_base_Access()
Dim Chemin_Base

Set conn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.recordset")

Nom_base = "Carlac.accdb"
Chemin_Base = ThisWorkbook.Path & "\" & Nom_base
'chaine de connexion 2007
'connstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Chemin_Base
'chaine de connexion 97-2013
connstring = "DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=" & Chemin_Base
'cn.ConnectionString = "DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};Data source=C:\Users\PC\Documents\Base de données1.accdb"
'Connexion a la base
conn.Open connstring

Sql = "select Matricule from Redacteur order by Matricule asc"
rs.Open Sql, conn, 3, 3
rs.MoveFirst

Do Until rs.EOF
DoEvents
Combo_Matricule.AddItem (rs.Fields("Matricule"))
rs.MoveNext
Loop
rs.Close
End Sub

merci de votre aide
Cdt
0

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

Posez votre question
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711
7 avril 2015 à 13:59
Re,

Dans l'exemple, la base est dans le meme repertoire que le fichier excel et il faut lancer le fichier excel de son repertoire pour avoir le Path
0
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
7 avril 2015 à 14:01
Ok mais maintenant cela bloque à
"rs.Open Sql, conn, 3, 3" pourquoi?
Cdt
0
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711
Modifié par f894009 le 7/04/2015 à 14:05
Re,

Il faut dans la requete SQL mettre le nom de votre table et le ou les noms des champs de cette table
ici requete avec tri ascendant:
Sql = "select NomduChamp from MaTable order by NomduChamp asc"

Vous connaissez SQL Access ??
0
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
7 avril 2015 à 14:08
en réponse à la question non
cdt
0
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711
7 avril 2015 à 14:14
Re,

Ben, vous allez faire comment pour votre job ???
0
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711
7 avril 2015 à 14:26
Re,

l'ironie n'est pas de mise. Ce n'est pas de l'ironie ni un jugement de valeur, c'est une simple question de bon sens et je suis pret a vous aider quoi qu'il en soit. C'est vous qui voyez
0
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
7 avril 2015 à 14:21
l'ironie n'est pas de mise.
Je fais mon job . ce n'est certainement pas à vous d'en juger.
cdt
-1
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
7 avril 2015 à 14:31
pourquoi avoir mis la question en résolue alors que ce n'est pas le cas. Je ne comprends pas votre motivation.
Jusqu'à présent toute mes questions ont reçu des réponses et les personnes m'ayant données celle-ci ne ce sont permis de juger et de mettre des commentaires ironiques. Bien au contraire celle-ci mon fait progresser au contraire de vous.
Fagots
0
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711 > fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
7 avril 2015 à 14:35
Re,

Ce n'est pas moi qui est mis la question en resolu, maintenant si vous etes un peut irrité, je ne pense pas y etre pour quelque chose, revenez a un etat d'esprit positif et voyons ce que nous pouvons faire pour vous
0
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
7 avril 2015 à 15:32
ok
0
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711 > fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
7 avril 2015 à 17:23
Re,

Qu'est-ce qu'il vous faut ?
0
fagots Messages postés 92 Date d'inscription mercredi 14 août 2013 Statut Membre Dernière intervention 26 avril 2016
8 avril 2015 à 10:36
re,
ce que je cherche, à partir de mon classeur Excel ouvrir ma base Access afin de réaliser mes macro. Attention je sais faire à partir d'Excel lancer mes macro dans Access , mais dans ma base Access j'ai une requête de création de table qui bloque ma macro d'Excell. a moins que vous me donniez la solution pour réaliser celle-ci directement je n'ai pas d'autre moyen pour l'instant que d'ouvrir ma base Access et réaliser mes macro Access en direct sur la base.
Espérant avoir était le plus clair possible.
Cdt
Fagots
0