MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Acessar Banco não corrente via vba

    avatar
    flaviomlombardi
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 05/02/2013

    [Resolvido]Acessar Banco não corrente via vba Empty [Resolvido]Acessar Banco não corrente via vba

    Mensagem  flaviomlombardi 22/3/2021, 15:02

    Bom dia Pessoal!!
    Estou com a seguinte dúvida: Para acessar o banco corrente via VBA e manipular os dados das tabelas pelo SQL, basta eu criar a variável e "setar" a variável criada como "Set BANCO = CurrentDb". Mas e se o Banco estivesse em outro Local? Qual a forma mais simples de se fazer essa conexão?

    Desde de já agradeço.

    FLAVIO
    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3329
    Registrado : 21/04/2011

    [Resolvido]Acessar Banco não corrente via vba Empty Re: [Resolvido]Acessar Banco não corrente via vba

    Mensagem  Marcelo David 22/3/2021, 15:55

    Boa tarde,
    assim:

    Dim db As dao.Database

    Set db = dao.OpenDatabase("caminho\nome_bando.accdb")

    db.Execute "sql"

    db.Close
    Set db = Nothing


    Última edição por Marcelo David em 22/3/2021, 17:20, editado 1 vez(es) (Motivo da edição : Incluir o parêntese de abertura que estava faltando)


    .................................................................................
    Marcelo David | [Resolvido]Acessar Banco não corrente via vba LinkedIn_Icon.jpg.original LinkedIn
    https://www.freetool.dev

    flaviomlombardi gosta desta mensagem

    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1476
    Registrado : 13/12/2016

    [Resolvido]Acessar Banco não corrente via vba Empty Re: [Resolvido]Acessar Banco não corrente via vba

    Mensagem  Alexandre Fim 22/3/2021, 16:00

    Flavio boa tarde,

    Minha sugestão é utilizar uma conexão do tipo ADO (Active Data Object) e para isso é necessário selecionar a seguinte referencia:
    [Resolvido]Acessar Banco não corrente via vba Ado_re10


    Imaginando que este banco externo não tenha senha, a conexão seria esta:

    'FUNÇÃO PARA CONEXÃO PARA ACCESS VERSÕES 2007/2010/2013

    Public Function fnConn()
    Dim cn As New ADODB.Connection

       If cn.State = 1 Then Exit Sub
       
       With cn
           .ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=CAMINHO_DO_DB_EXTERNO;Persist Security Info=False;"
           .Open
       End With


    End Function



    Quando for utilizar recordset para este banco de dados, faça conforme abaixo:


    Código:


    Dim sSQL As String
    Dim rs  As New ADODB.Recordset


        'Abre a conexão
        Call fnConn
       
        'Instrução SQL desejada
        sSQL = "SELECT * FROM SUA_TABELA WHERE SUA_CONDICAO"
       
        'Abre o recordset usando a variável de conexão (cn)
        rs.Open sSQL, cn, adOpenDynamic, adLockOptimistic
       
        If Not rs.EOF Then
       
        'SEU CÓDIGO CONFORME A ROTINA DESEJADA
       
       
        End If
       
        'FECHA RECORDSET
        rs.Close
        'lIMPA DA MEMÓRIA
        Set rs = Nothing
       
        'fECHA CONEXÃO
        cn.Close



    Espero ter ajudado

    Boa sorte


    FIM










    .................................................................................
    - Procure sempre anexar seu projeto para análise do problema/dúvida.
    - Ao copiar/colar um código VBA, procure entender seu funcionamento.
    - Se o problema foi resolvido, não se esqueça de marcar o tópico como RESOLVIDO.

    flaviomlombardi gosta desta mensagem

    avatar
    flaviomlombardi
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 05/02/2013

    [Resolvido]Acessar Banco não corrente via vba Empty Re: [Resolvido]Acessar Banco não corrente via vba

    Mensagem  flaviomlombardi 22/3/2021, 19:56

    Show!!! Marcelo Davi... Funcionou bacana... Se o banco tiver senha, tem como ?
    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3329
    Registrado : 21/04/2011

    [Resolvido]Acessar Banco não corrente via vba Empty Re: [Resolvido]Acessar Banco não corrente via vba

    Mensagem  Marcelo David 23/3/2021, 02:12

    Assim:

    Set db = dao.OpenDatabase("caminho\nome_bando.accdb", False, False, "MS Access;PWD=SuaSenha")


    .................................................................................
    Marcelo David | [Resolvido]Acessar Banco não corrente via vba LinkedIn_Icon.jpg.original LinkedIn
    https://www.freetool.dev

    flaviomlombardi gosta desta mensagem

    avatar
    flaviomlombardi
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 05/02/2013

    [Resolvido]Acessar Banco não corrente via vba Empty Re: [Resolvido]Acessar Banco não corrente via vba

    Mensagem  flaviomlombardi 23/3/2021, 11:33

    Mais uma vez Obrigado a todos!! Funcionou redondo!!
    Vlw.

    Marcelo David gosta desta mensagem

    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3329
    Registrado : 21/04/2011

    [Resolvido]Acessar Banco não corrente via vba Empty Re: [Resolvido]Acessar Banco não corrente via vba

    Mensagem  Marcelo David 23/3/2021, 11:53

    Gratos pelo retorno! O Fórum agradece!


    .................................................................................
    Marcelo David | [Resolvido]Acessar Banco não corrente via vba LinkedIn_Icon.jpg.original LinkedIn
    https://www.freetool.dev

      Data/hora atual: 23/6/2021, 06:56