ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Controlling Access from Excel (https://www.excelbanter.com/excel-programming/345379-controlling-access-excel.html)

Neily[_3_]

Controlling Access from Excel
 
Hi,

I've been reading up on controlling various Office applications from other
Office Applications.

Right now, I'm trying to control Access from Excel and wondered if anyone
could tell me how to run a DoCmd statement on Access from Excel

Here's what I have so far.

Sub ControlAccessFromExcel()

Set objAccess = CreateObject("Access.Application")
Set objDatabase = objAccess.Database.Open("[access db filepath]")

objDatabase.DoCmd.RunSQL "SELECT...."

End Sub

Now I'm pretty sure that the word "Database" in the line
objAccess.Database.Open("[access db
filepath]")
is wrong. Does anyone know the correct syntax for this or if I'm
completely barking up the wrong tree.

Secondly, is the syntax for the line....
objDatabase.DoCmd.RunSQL "SELECT...."
..........correct?

Ta

Neil

Gary L Brown[_2_]

Controlling Access from Excel
 

Try something like...

Sub OpenAccess()
Dim objAccess As Object

On Error GoTo err_Sub

Set objAccess = CreateObject("Access.Application")

With objAccess
..OpenCurrentDatabase filepath:="G:\Temp\ReestablishLinks.mdb"
..Visible = True
..DoCmd.RunSQL "Select..."
End With

MsgBox ""



exit_Sub:
On Error Resume Next
Set objAccess = Nothing
Exit Sub

err_Sub:
Debug.Print "Error: " & Err.Number & " - " & Err.Description
GoTo exit_Sub

End Sub
---------------------
where...
..DoCmd.RunSQL "Select..."
is fine as long as you are doing an action make-table query.

HTH,
Gary Brown



--
Gary L Brown
------------------------------------------------------------------------
Gary L Brown's Profile:
http://www.excelforum.com/member.php...o&userid=28563
View this thread: http://www.excelforum.com/showthread...hreadid=484324


Neily[_3_]

Controlling Access from Excel
 
Cheers Dude,

That's exactly what I was after, I'll try it later.

Ta.

Neil

"Gary L Brown" wrote:


Try something like...

Sub OpenAccess()
Dim objAccess As Object

On Error GoTo err_Sub

Set objAccess = CreateObject("Access.Application")

With objAccess
.OpenCurrentDatabase filepath:="G:\Temp\ReestablishLinks.mdb"
.Visible = True
.DoCmd.RunSQL "Select..."
End With

MsgBox ""



exit_Sub:
On Error Resume Next
Set objAccess = Nothing
Exit Sub

err_Sub:
Debug.Print "Error: " & Err.Number & " - " & Err.Description
GoTo exit_Sub

End Sub
---------------------
where...
.DoCmd.RunSQL "Select..."
is fine as long as you are doing an action make-table query.

HTH,
Gary Brown



--
Gary L Brown
------------------------------------------------------------------------
Gary L Brown's Profile:
http://www.excelforum.com/member.php...o&userid=28563
View this thread: http://www.excelforum.com/showthread...hreadid=484324



Jim May

Controlling Access from Excel
 
Gary nice code; I'm trying it out here
and am currently getting:
Compile Error
Sub Function not defined
where
OpenCurrentDatabase << is highlighted
What can/should I do to move forward here?

TIA,
Jim

"Gary L Brown"
wrote in message
news:Gary.L.Brown.1ycfxa_1131731409.0439@excelforu m-nospam.com...

Try something like...

Sub OpenAccess()
Dim objAccess As Object

On Error GoTo err_Sub

Set objAccess = CreateObject("Access.Application")

With objAccess
OpenCurrentDatabase filepath:="G:\Temp\ReestablishLinks.mdb"
Visible = True
DoCmd.RunSQL "Select..."
End With

MsgBox ""



exit_Sub:
On Error Resume Next
Set objAccess = Nothing
Exit Sub

err_Sub:
Debug.Print "Error: " & Err.Number & " - " & Err.Description
GoTo exit_Sub

End Sub
---------------------
where...
DoCmd.RunSQL "Select..."
is fine as long as you are doing an action make-table query.

HTH,
Gary Brown



--
Gary L Brown
------------------------------------------------------------------------
Gary L Brown's Profile:
http://www.excelforum.com/member.php...o&userid=28563
View this thread: http://www.excelforum.com/showthread...hreadid=484324




Tom Ogilvy

Controlling Access from Excel
 
do you have

.OpenCurrentDatabase . . .

with a period in front of OpencurrentDatabase?

--
Regards,
Tom Ogilvy

"Jim May" wrote in message
news:%_odf.11888$0l5.5789@dukeread06...
Gary nice code; I'm trying it out here
and am currently getting:
Compile Error
Sub Function not defined
where
OpenCurrentDatabase << is highlighted
What can/should I do to move forward here?

TIA,
Jim

"Gary L Brown"
wrote in message
news:Gary.L.Brown.1ycfxa_1131731409.0439@excelforu m-nospam.com...

Try something like...

Sub OpenAccess()
Dim objAccess As Object

On Error GoTo err_Sub

Set objAccess = CreateObject("Access.Application")

With objAccess
OpenCurrentDatabase filepath:="G:\Temp\ReestablishLinks.mdb"
Visible = True
DoCmd.RunSQL "Select..."
End With

MsgBox ""



exit_Sub:
On Error Resume Next
Set objAccess = Nothing
Exit Sub

err_Sub:
Debug.Print "Error: " & Err.Number & " - " & Err.Description
GoTo exit_Sub

End Sub
---------------------
where...
DoCmd.RunSQL "Select..."
is fine as long as you are doing an action make-table query.

HTH,
Gary Brown



--
Gary L Brown
------------------------------------------------------------------------
Gary L Brown's Profile:
http://www.excelforum.com/member.php...o&userid=28563
View this thread:

http://www.excelforum.com/showthread...hreadid=484324






Jim May

Controlling Access from Excel
 
Thanks Tom,
Your right it was omitted from the code I copied;
including the .Visible = True Which I changed..

I had previously commented out the line:
DoCmd.RunSQL "Select..." ' Just want to Open Northwind only - No action to
be taken..

But now I'm getting:
Error: 438 - Object doesn't support this property or method

Any ideas?
Jim

"Tom Ogilvy" wrote in message
...
do you have

.OpenCurrentDatabase . . .

with a period in front of OpencurrentDatabase?

--
Regards,
Tom Ogilvy

"Jim May" wrote in message
news:%_odf.11888$0l5.5789@dukeread06...
Gary nice code; I'm trying it out here
and am currently getting:
Compile Error
Sub Function not defined
where
OpenCurrentDatabase << is highlighted
What can/should I do to move forward here?

TIA,
Jim

"Gary L Brown"

wrote in message
news:Gary.L.Brown.1ycfxa_1131731409.0439@excelforu m-nospam.com...

Try something like...

Sub OpenAccess()
Dim objAccess As Object

On Error GoTo err_Sub

Set objAccess = CreateObject("Access.Application")

With objAccess
OpenCurrentDatabase filepath:="G:\Temp\ReestablishLinks.mdb"
Visible = True
DoCmd.RunSQL "Select..."
End With

MsgBox ""



exit_Sub:
On Error Resume Next
Set objAccess = Nothing
Exit Sub

err_Sub:
Debug.Print "Error: " & Err.Number & " - " & Err.Description
GoTo exit_Sub

End Sub
---------------------
where...
DoCmd.RunSQL "Select..."
is fine as long as you are doing an action make-table query.

HTH,
Gary Brown



--
Gary L Brown
------------------------------------------------------------------------
Gary L Brown's Profile:
http://www.excelforum.com/member.php...o&userid=28563
View this thread:

http://www.excelforum.com/showthread...hreadid=484324








Jim May

Controlling Access from Excel
 
Never mind, Tom
I had changed:
..OpenCurrentDatabase
to
..OpenDatabase

Changing back to
..OpenCurrentDatabase
gets it working..


"Jim May" wrote in message
news:BVrdf.11899$0l5.1108@dukeread06...
Thanks Tom,
Your right it was omitted from the code I copied;
including the .Visible = True Which I changed..

I had previously commented out the line:
DoCmd.RunSQL "Select..." ' Just want to Open Northwind only - No action
to be taken..

But now I'm getting:
Error: 438 - Object doesn't support this property or method

Any ideas?
Jim

"Tom Ogilvy" wrote in message
...
do you have

.OpenCurrentDatabase . . .

with a period in front of OpencurrentDatabase?

--
Regards,
Tom Ogilvy

"Jim May" wrote in message
news:%_odf.11888$0l5.5789@dukeread06...
Gary nice code; I'm trying it out here
and am currently getting:
Compile Error
Sub Function not defined
where
OpenCurrentDatabase << is highlighted
What can/should I do to move forward here?

TIA,
Jim

"Gary L Brown"

wrote in message
news:Gary.L.Brown.1ycfxa_1131731409.0439@excelforu m-nospam.com...

Try something like...

Sub OpenAccess()
Dim objAccess As Object

On Error GoTo err_Sub

Set objAccess = CreateObject("Access.Application")

With objAccess
OpenCurrentDatabase filepath:="G:\Temp\ReestablishLinks.mdb"
Visible = True
DoCmd.RunSQL "Select..."
End With

MsgBox ""



exit_Sub:
On Error Resume Next
Set objAccess = Nothing
Exit Sub

err_Sub:
Debug.Print "Error: " & Err.Number & " - " & Err.Description
GoTo exit_Sub

End Sub
---------------------
where...
DoCmd.RunSQL "Select..."
is fine as long as you are doing an action make-table query.

HTH,
Gary Brown



--
Gary L Brown
------------------------------------------------------------------------
Gary L Brown's Profile:
http://www.excelforum.com/member.php...o&userid=28563
View this thread:

http://www.excelforum.com/showthread...hreadid=484324











All times are GMT +1. The time now is 03:42 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com