Peut-on exécuter une procédure d'une base de données ACCESS ?
6 réponses
GIQUES
Salut à tous,
J'aurais besoin qu'une application que je développe puisse exécuter une
procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application et
d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création d'un
module externe qui serait appelé soit par Mon application VB, soit par
ACCESS)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacques93
Bonjour GIQUES, GIQUES a écrit :
Salut à tous,
J'aurais besoin qu'une application que je développe puisse exécuter une procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application et d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création d'un module externe qui serait appelé soit par Mon application VB, soit par ACCESS)
Si ta procédure s'appelle MaProc et se trouve dans un module, par exemple :
Public Sub MaProc() MsgBox "Procédure Access" ' ... End Sub
tu peux l'appeler à partir de VB avec :
Dim Acc As Object
Set Acc = CreateObject("Access.Application") Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") ' à adapter Acc.Run "MaProc" Acc.CloseCurrentDatabase
-- Cordialement,
Jacques.
Bonjour GIQUES,
GIQUES a écrit :
Salut à tous,
J'aurais besoin qu'une application que je développe puisse exécuter une
procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application et
d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création d'un
module externe qui serait appelé soit par Mon application VB, soit par
ACCESS)
Si ta procédure s'appelle MaProc et se trouve dans un module, par exemple :
Public Sub MaProc()
MsgBox "Procédure Access"
' ...
End Sub
tu peux l'appeler à partir de VB avec :
Dim Acc As Object
Set Acc = CreateObject("Access.Application")
Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") ' à adapter
Acc.Run "MaProc"
Acc.CloseCurrentDatabase
J'aurais besoin qu'une application que je développe puisse exécuter une procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application et d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création d'un module externe qui serait appelé soit par Mon application VB, soit par ACCESS)
Si ta procédure s'appelle MaProc et se trouve dans un module, par exemple :
Public Sub MaProc() MsgBox "Procédure Access" ' ... End Sub
tu peux l'appeler à partir de VB avec :
Dim Acc As Object
Set Acc = CreateObject("Access.Application") Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") ' à adapter Acc.Run "MaProc" Acc.CloseCurrentDatabase
-- Cordialement,
Jacques.
Giques
Merci Jacques,
Je m'en vais essayer cela
Salut
Giques
"Jacques93" a écrit dans le message de news:
Bonjour GIQUES, GIQUES a écrit :
Salut à tous,
J'aurais besoin qu'une application que je développe puisse exécuter une procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application et d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création d'un module externe qui serait appelé soit par Mon application VB, soit par ACCESS)
Si ta procédure s'appelle MaProc et se trouve dans un module, par exemple :
Public Sub MaProc() MsgBox "Procédure Access" ' ... End Sub
tu peux l'appeler à partir de VB avec :
Dim Acc As Object
Set Acc = CreateObject("Access.Application") Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") ' à adapter Acc.Run "MaProc" Acc.CloseCurrentDatabase
-- Cordialement,
Jacques.
Merci Jacques,
Je m'en vais essayer cela
Salut
Giques
"Jacques93" <jacques@Nospam> a écrit dans le message de news:
u0bEdirpHHA.1216@TK2MSFTNGP03.phx.gbl...
Bonjour GIQUES,
GIQUES a écrit :
Salut à tous,
J'aurais besoin qu'une application que je développe puisse exécuter une
procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application
et d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création
d'un module externe qui serait appelé soit par Mon application VB, soit
par ACCESS)
Si ta procédure s'appelle MaProc et se trouve dans un module, par exemple
:
Public Sub MaProc()
MsgBox "Procédure Access"
' ...
End Sub
tu peux l'appeler à partir de VB avec :
Dim Acc As Object
Set Acc = CreateObject("Access.Application")
Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") ' à adapter
Acc.Run "MaProc"
Acc.CloseCurrentDatabase
J'aurais besoin qu'une application que je développe puisse exécuter une procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application et d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création d'un module externe qui serait appelé soit par Mon application VB, soit par ACCESS)
Si ta procédure s'appelle MaProc et se trouve dans un module, par exemple :
Public Sub MaProc() MsgBox "Procédure Access" ' ... End Sub
tu peux l'appeler à partir de VB avec :
Dim Acc As Object
Set Acc = CreateObject("Access.Application") Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") ' à adapter Acc.Run "MaProc" Acc.CloseCurrentDatabase
-- Cordialement,
Jacques.
GIQUES
Salut Jacques,
J'ai essayé la manière décrite, et cela fonctionne très bien tant qu'il n'y a pas d'arguments pour la procédure.
Malheureusemnt dans mon cas, j'ai une message d'erreur du style"Les arguments ne sont pas facultatifs".
Y-a-t'il moyen de fournir les arguments à la procédure ?
J'ai essayé des trucs du genre : Acc.run "MaProc (A,B,C)" ou Acc.run "MaProc A, B, C" mais cela ne fonctionne pas.
Si quelqu'un a une solution, je suis preneur.
Merci d'avance
Giques "Jacques93" a écrit dans le message de news:
Bonjour GIQUES, GIQUES a écrit :
Salut à tous,
J'aurais besoin qu'une application que je développe puisse exécuter une procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application et d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création d'un module externe qui serait appelé soit par Mon application VB, soit par ACCESS)
Si ta procédure s'appelle MaProc et se trouve dans un module, par exemple :
Public Sub MaProc() MsgBox "Procédure Access" ' ... End Sub
tu peux l'appeler à partir de VB avec :
Dim Acc As Object
Set Acc = CreateObject("Access.Application") Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") ' à adapter Acc.Run "MaProc" Acc.CloseCurrentDatabase
-- Cordialement,
Jacques.
Salut Jacques,
J'ai essayé la manière décrite, et cela fonctionne très bien tant qu'il n'y
a pas d'arguments pour la procédure.
Malheureusemnt dans mon cas, j'ai une message d'erreur du style"Les
arguments ne sont pas facultatifs".
Y-a-t'il moyen de fournir les arguments à la procédure ?
J'ai essayé des trucs du genre : Acc.run "MaProc (A,B,C)" ou Acc.run "MaProc
A, B, C" mais cela ne fonctionne pas.
Si quelqu'un a une solution, je suis preneur.
Merci d'avance
Giques
"Jacques93" <jacques@Nospam> a écrit dans le message de news:
u0bEdirpHHA.1216@TK2MSFTNGP03.phx.gbl...
Bonjour GIQUES,
GIQUES a écrit :
Salut à tous,
J'aurais besoin qu'une application que je développe puisse exécuter une
procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application
et d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création
d'un module externe qui serait appelé soit par Mon application VB, soit
par ACCESS)
Si ta procédure s'appelle MaProc et se trouve dans un module, par exemple
:
Public Sub MaProc()
MsgBox "Procédure Access"
' ...
End Sub
tu peux l'appeler à partir de VB avec :
Dim Acc As Object
Set Acc = CreateObject("Access.Application")
Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") ' à adapter
Acc.Run "MaProc"
Acc.CloseCurrentDatabase
J'ai essayé la manière décrite, et cela fonctionne très bien tant qu'il n'y a pas d'arguments pour la procédure.
Malheureusemnt dans mon cas, j'ai une message d'erreur du style"Les arguments ne sont pas facultatifs".
Y-a-t'il moyen de fournir les arguments à la procédure ?
J'ai essayé des trucs du genre : Acc.run "MaProc (A,B,C)" ou Acc.run "MaProc A, B, C" mais cela ne fonctionne pas.
Si quelqu'un a une solution, je suis preneur.
Merci d'avance
Giques "Jacques93" a écrit dans le message de news:
Bonjour GIQUES, GIQUES a écrit :
Salut à tous,
J'aurais besoin qu'une application que je développe puisse exécuter une procédure écrite dans un module d'une base ACCESS.
L'idée est de ne pas devoir recopier cette procédure dans mon application et d'être obliger de la modifier des 2 côtés.
Si c'est possible, comment s'y prend-t'on ?
Si ce ne ne les pas, y-at'il une alternative ? (je pense à la création d'un module externe qui serait appelé soit par Mon application VB, soit par ACCESS)
Si ta procédure s'appelle MaProc et se trouve dans un module, par exemple :
Public Sub MaProc() MsgBox "Procédure Access" ' ... End Sub
tu peux l'appeler à partir de VB avec :
Dim Acc As Object
Set Acc = CreateObject("Access.Application") Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") ' à adapter Acc.Run "MaProc" Acc.CloseCurrentDatabase
-- Cordialement,
Jacques.
Jacques93
Bonjour GIQUES, GIQUES a écrit :
Salut Jacques,
J'ai essayé la manière décrite, et cela fonctionne très bien tant qu'il n'y a pas d'arguments pour la procédure.
Malheureusemnt dans mon cas, j'ai une message d'erreur du style"Les arguments ne sont pas facultatifs".
Y-a-t'il moyen de fournir les arguments à la procédure ?
J'ai essayé des trucs du genre : Acc.run "MaProc (A,B,C)" ou Acc.run "MaProc A, B, C" mais cela ne fonctionne pas.
Si quelqu'un a une solution, je suis preneur.
Merci d'avance
Oui, avec dans access par exemple :
Public Sub MaProc(Msg As String) MsgBox "Procédure Access" & vbCrLf & Msg End Sub
et dans VB
Private Sub Command4_Click() Dim Acc As Object
Set Acc = CreateObject("Access.Application") Acc.OpenCurrentDatabase (App.Path & "bd1.mdb") Acc.Run "MaProc", "Hello" Acc.CloseCurrentDatabase End Sub
Faut placer la ponctuation au bon endroit ;-)
-- Cordialement,
Jacques.
Bonjour GIQUES,
GIQUES a écrit :
Salut Jacques,
J'ai essayé la manière décrite, et cela fonctionne très bien tant qu'il n'y
a pas d'arguments pour la procédure.
Malheureusemnt dans mon cas, j'ai une message d'erreur du style"Les
arguments ne sont pas facultatifs".
Y-a-t'il moyen de fournir les arguments à la procédure ?
J'ai essayé des trucs du genre : Acc.run "MaProc (A,B,C)" ou Acc.run "MaProc
A, B, C" mais cela ne fonctionne pas.
Si quelqu'un a une solution, je suis preneur.
Merci d'avance
Oui, avec dans access par exemple :
Public Sub MaProc(Msg As String)
MsgBox "Procédure Access" & vbCrLf & Msg
End Sub
et dans VB
Private Sub Command4_Click()
Dim Acc As Object
Set Acc = CreateObject("Access.Application")
Acc.OpenCurrentDatabase (App.Path & "bd1.mdb")
Acc.Run "MaProc", "Hello"
Acc.CloseCurrentDatabase
End Sub