+ Reply to Thread
Results 1 to 10 of 10

Open Access from Excel

Hybrid View

  1. #1
    Daniel Bonallack
    Guest

    Open Access from Excel

    I currently have code in Excel VBA that pulls data from Access in my Excel
    worksheet. However, it runs about 10 times faster if Access is already open.
    And (I'm not sure of this), I think it helps if an Access query is open and
    in design view.

    Can I have the code to:
    1. Open Access database XXXX.mdb, if it is not already open
    2. Open the query YYYY in design view
    3. Ensure that the Excel worksheet is still active

    Hope this isn't a big ask - thanks very much in advance

    regards
    Daniel Bonallack

  2. #2
    NickHK
    Guest

    Re: Open Access from Excel

    Daniel,
    How are you pulling the data into excel ?

    NickHK

    "Daniel Bonallack" <[email protected]> wrote in
    message news:[email protected]...
    > I currently have code in Excel VBA that pulls data from Access in my Excel
    > worksheet. However, it runs about 10 times faster if Access is already

    open.
    > And (I'm not sure of this), I think it helps if an Access query is open

    and
    > in design view.
    >
    > Can I have the code to:
    > 1. Open Access database XXXX.mdb, if it is not already open
    > 2. Open the query YYYY in design view
    > 3. Ensure that the Excel worksheet is still active
    >
    > Hope this isn't a big ask - thanks very much in advance
    >
    > regards
    > Daniel Bonallack




  3. #3
    Daniel Bonallack
    Guest

    Re: Open Access from Excel

    Hi Nick

    Thanks for responding. I'm using VBA code in Excel to run an SQL query on
    the closed Access database, and import the data into Excel.

    Do you need me to be more specific? I can copy in the code if you want, but
    it's quite long.

    Daniel


    "NickHK" wrote:

    > Daniel,
    > How are you pulling the data into excel ?
    >
    > NickHK
    >
    > "Daniel Bonallack" <[email protected]> wrote in
    > message news:[email protected]...
    > > I currently have code in Excel VBA that pulls data from Access in my Excel
    > > worksheet. However, it runs about 10 times faster if Access is already

    > open.
    > > And (I'm not sure of this), I think it helps if an Access query is open

    > and
    > > in design view.
    > >
    > > Can I have the code to:
    > > 1. Open Access database XXXX.mdb, if it is not already open
    > > 2. Open the query YYYY in design view
    > > 3. Ensure that the Excel worksheet is still active
    > >
    > > Hope this isn't a big ask - thanks very much in advance
    > >
    > > regards
    > > Daniel Bonallack

    >
    >
    >


  4. #4
    NickHK
    Guest

    Re: Open Access from Excel

    Daniel,
    You using VBA with ADO recordset or Excel's Data>Get External data
    functionality.
    Just post the opening code.

    NickHK

    "Daniel Bonallack" <[email protected]> wrote in
    message news:[email protected]...
    > Hi Nick
    >
    > Thanks for responding. I'm using VBA code in Excel to run an SQL query on
    > the closed Access database, and import the data into Excel.
    >
    > Do you need me to be more specific? I can copy in the code if you want,

    but
    > it's quite long.
    >
    > Daniel
    >
    >
    > "NickHK" wrote:
    >
    > > Daniel,
    > > How are you pulling the data into excel ?
    > >
    > > NickHK
    > >
    > > "Daniel Bonallack" <[email protected]> wrote in
    > > message news:[email protected]...
    > > > I currently have code in Excel VBA that pulls data from Access in my

    Excel
    > > > worksheet. However, it runs about 10 times faster if Access is

    already
    > > open.
    > > > And (I'm not sure of this), I think it helps if an Access query is

    open
    > > and
    > > > in design view.
    > > >
    > > > Can I have the code to:
    > > > 1. Open Access database XXXX.mdb, if it is not already open
    > > > 2. Open the query YYYY in design view
    > > > 3. Ensure that the Excel worksheet is still active
    > > >
    > > > Hope this isn't a big ask - thanks very much in advance
    > > >
    > > > regards
    > > > Daniel Bonallack

    > >
    > >
    > >




  5. #5
    Daniel Bonallack
    Guest

    Re: Open Access from Excel

    I guess this would be the basic code.
    So I want to check that Access is open, and preferably have a query open in
    design view
    Thanks!

    Sub GetBaseData()

    Dim DBFullName As String
    Dim Cnct As String, Src As String
    Dim Connection As ADODB.Connection
    Dim Recordset As ADODB.Recordset

    DBFullName = "xxx.mdb"


    ' Open the connection
    Set Connection = New ADODB.Connection
    Cnct = "Provider=Microsoft.Jet.OLEDB.4.0; "
    Cnct = Cnct & "Data Source=" & DBFullName & ";"
    Connection.Open ConnectionString:=Cnct


    With Recordset
    Src = "daniel's sql query code"
    .Open Source:=Src, ActiveConnection:=Connection

    Sheets("data").Select

    ' Write the field names
    For Col = 0 To Recordset.Fields.Count - 1
    Range("A1").Offset(0, Col).Value = Recordset.Fields(Col).Name
    Next

    ' Write the recordset
    Range("A1").Offset(1, 0).CopyFromRecordset Recordset
    End With

    Set Recordset = Nothing
    Connection.Close
    Set Connection = Nothing

    End Sub

    "NickHK" wrote:

    > Daniel,
    > You using VBA with ADO recordset or Excel's Data>Get External data
    > functionality.
    > Just post the opening code.
    >
    > NickHK
    >
    > "Daniel Bonallack" <[email protected]> wrote in
    > message news:[email protected]...
    > > Hi Nick
    > >
    > > Thanks for responding. I'm using VBA code in Excel to run an SQL query on
    > > the closed Access database, and import the data into Excel.
    > >
    > > Do you need me to be more specific? I can copy in the code if you want,

    > but
    > > it's quite long.
    > >
    > > Daniel
    > >
    > >
    > > "NickHK" wrote:
    > >
    > > > Daniel,
    > > > How are you pulling the data into excel ?
    > > >
    > > > NickHK
    > > >
    > > > "Daniel Bonallack" <[email protected]> wrote in
    > > > message news:[email protected]...
    > > > > I currently have code in Excel VBA that pulls data from Access in my

    > Excel
    > > > > worksheet. However, it runs about 10 times faster if Access is

    > already
    > > > open.
    > > > > And (I'm not sure of this), I think it helps if an Access query is

    > open
    > > > and
    > > > > in design view.
    > > > >
    > > > > Can I have the code to:
    > > > > 1. Open Access database XXXX.mdb, if it is not already open
    > > > > 2. Open the query YYYY in design view
    > > > > 3. Ensure that the Excel worksheet is still active
    > > > >
    > > > > Hope this isn't a big ask - thanks very much in advance
    > > > >
    > > > > regards
    > > > > Daniel Bonallack
    > > >
    > > >
    > > >

    >
    >
    >


  6. #6
    NickHK
    Guest

    Re: Open Access from Excel

    Daniel,
    I see no reason why you would need to open Access; you are using Jet/OLEDB
    to query the .mdb, so Access is irrelevant.
    The source of the apparent delay lies elsewhere.

    NickHK

    "Daniel Bonallack" <[email protected]> wrote in
    message news:[email protected]...
    > I guess this would be the basic code.
    > So I want to check that Access is open, and preferably have a query open

    in
    > design view
    > Thanks!
    >
    > Sub GetBaseData()
    >
    > Dim DBFullName As String
    > Dim Cnct As String, Src As String
    > Dim Connection As ADODB.Connection
    > Dim Recordset As ADODB.Recordset
    >
    > DBFullName = "xxx.mdb"
    >
    >
    > ' Open the connection
    > Set Connection = New ADODB.Connection
    > Cnct = "Provider=Microsoft.Jet.OLEDB.4.0; "
    > Cnct = Cnct & "Data Source=" & DBFullName & ";"
    > Connection.Open ConnectionString:=Cnct
    >
    >
    > With Recordset
    > Src = "daniel's sql query code"
    > .Open Source:=Src, ActiveConnection:=Connection
    >
    > Sheets("data").Select
    >
    > ' Write the field names
    > For Col = 0 To Recordset.Fields.Count - 1
    > Range("A1").Offset(0, Col).Value = Recordset.Fields(Col).Name
    > Next
    >
    > ' Write the recordset
    > Range("A1").Offset(1, 0).CopyFromRecordset Recordset
    > End With
    >
    > Set Recordset = Nothing
    > Connection.Close
    > Set Connection = Nothing
    >
    > End Sub
    >
    > "NickHK" wrote:
    >
    > > Daniel,
    > > You using VBA with ADO recordset or Excel's Data>Get External data
    > > functionality.
    > > Just post the opening code.
    > >
    > > NickHK
    > >
    > > "Daniel Bonallack" <[email protected]> wrote in
    > > message news:[email protected]...
    > > > Hi Nick
    > > >
    > > > Thanks for responding. I'm using VBA code in Excel to run an SQL

    query on
    > > > the closed Access database, and import the data into Excel.
    > > >
    > > > Do you need me to be more specific? I can copy in the code if you

    want,
    > > but
    > > > it's quite long.
    > > >
    > > > Daniel
    > > >
    > > >
    > > > "NickHK" wrote:
    > > >
    > > > > Daniel,
    > > > > How are you pulling the data into excel ?
    > > > >
    > > > > NickHK
    > > > >
    > > > > "Daniel Bonallack" <[email protected]> wrote

    in
    > > > > message news:[email protected]...
    > > > > > I currently have code in Excel VBA that pulls data from Access in

    my
    > > Excel
    > > > > > worksheet. However, it runs about 10 times faster if Access is

    > > already
    > > > > open.
    > > > > > And (I'm not sure of this), I think it helps if an Access query

    is
    > > open
    > > > > and
    > > > > > in design view.
    > > > > >
    > > > > > Can I have the code to:
    > > > > > 1. Open Access database XXXX.mdb, if it is not already open
    > > > > > 2. Open the query YYYY in design view
    > > > > > 3. Ensure that the Excel worksheet is still active
    > > > > >
    > > > > > Hope this isn't a big ask - thanks very much in advance
    > > > > >
    > > > > > regards
    > > > > > Daniel Bonallack
    > > > >
    > > > >
    > > > >

    > >
    > >
    > >




+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1