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

2 participantes

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 31/3/2022, 00:49

    Saudações,

    Fiz um banco de dados com base em uma tabela vinculada.
    Consultas, formulários, relatórios... Tudo foi estruturado com base nos dados desta tabela. O objetivo do aplicativo é apenas analisar esta base, filtrar os dados e emitir relatórios.

    A base é uma folha de pagamento, logo é mensal. Quando quero analisar outro mês, apenas substituo o arquivo vinculado diretamente no diretório do Windows, nomeando o novo arquivo com o nome do antigo. É um procedimento bem modesto, mas funciona.

    A pergunta é:
    É possível fazer essa mudança diretamente no Access? Ou seja, é possível selecionar a base vinculada (ir busca-la lá no diretório) logo no início da aplicação, através de um controle no formulário inicial?

    Desde já agradeço a ajuda.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 31/3/2022, 08:35

    Olá Anderson Bitencourt, seja bem-vindo ao fórum!

    Movi o tópico para a sala correta, pois não era exemplo, mas sim dúvida.

    Veja este meu exemplo se ajuda:
    https://www.maximoaccess.com/t27608-exemplo-de-sistema-multi-empresa

    Existe mais exemplos no fórum, veja como fazer uma "Busca":
    https://www.maximoaccess.com/t1115-busca-no-forum-search

    Abraço

    4nderson gosta desta mensagem

    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 31/3/2022, 13:11

    Bom dia,

    Abri o exemplo aqui rápido e parece que é exatamente isso que estou precisando, vou verificar com calma.

    Muito obrigado pelo retorno!

    Logo mais deixo um feedback mais detalhado aqui, antes de marcar a tópico como resolvido.

    Valeu!!!
    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 31/3/2022, 23:49

    Meu caro ahteixeira, funcionou perfeitamente! Você é fera mesmo!

    Não querendo abusar, mas já abusando...

    Com bases no formato do Access deu tudo certo, mas não consegui fazer o mesmo com arquivos do Excel.
    É possível?

    De antemão já agradeço pela força.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 1/4/2022, 08:17

    Olá Anderson,

    Para ligar Excel, talvez este seja mais adequado:
    https://www.maximoaccess.com/t29991-resolvidocalculos-sobre-tabelas-ligar-excel-adionar-dados-a-tabela

    Não falta exemplos no forum, veja como fazer uma "Busca":
    https://www.maximoaccess.com/t1115-busca-no-forum-search

    Abraço

    4nderson gosta desta mensagem

    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 1/4/2022, 15:22

    Meu caro, você é massa!

    A combinação dos dois códigos e algumas adaptações e... Pronto!
    A coisa se encaixou perfeitamente com a minha necessidade.

    Parabéns a você e ao fórum! Muito obrigado!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 1/4/2022, 17:19

    Olá Anderson Bitencourt,

    Obrigado pelo retorno, o fórum agradece.

    Abraço e bons estudos com o MaximoAccess Wink
    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 5/4/2022, 02:53

    Caro ahteixeira,

    Por favor, me ilumine as ideias...

    Eu preciso de um controle semelhante ao do rodapé do frmMenu do seu exemplo mas, em vez de puxar um dado específico de dentro da tabela, preciso que ele puxe o nome do arquivo de origem dos dados. É possível?
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 5/4/2022, 12:52

    Olá Anderson Bitencourt,

    Não é permitido tirar dúvidas na sala de exemplos, já regularizei a situação e movi a questão para este tópico.
    Sugiro a leitura das Regras do Forúm.

    Relativamente à questão, crie um módulo no meu exemplo e copie a função abaixo:

    Código:
    Public Function fncCaminhoTabelaLigada(NomeTabela As String) As String
    ' Autor ..: Alvaro Teixeira (ahteixeira)
    ' Código .: fncCaminhoTabelaLigada
    ' Data ...: 05-04-2022
    ' Para ...: MaximoAccess.com
    ' Obs ....: Obter o caminho completo e base de dados de tabela ligada

        On Error Resume Next
        fncCaminhoTabelaLigada = Replace(CurrentDb.TableDefs(NomeTabela).Connect, ";DATABASE=", "")
        
    End Function

    No formulário pretendido, altere a "origem" do campo de texto com a chamada da função indicando o nome da tabela, por exemplo:
    Código:
    =fncCaminhoTabelaLigada("tblClientes")

    Obtemos o pretendido:
    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access 0199

    Abraço

    4nderson gosta desta mensagem

    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 5/4/2022, 13:43

    Meu caro,

    Peço desculpas pela minha inabilidade em usar as ferramentas do fórum. Prometo prestar mais atenção.

    Esqueci de mencionar que estou usando uma base Excel, conforme sua dica na mensagem nº 5.
    Talvez por conta disso não tenha dado 100% certo. O caminho não aparece limpo no campo de texto. Aparece bem confuso assim:

    Excel 12.0 Xml;HDR=YES;IMEX=2;ACCDB=YESD:\caminho-do-arquivo\arquivo.xlsx

    Grato por sua ajuda.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 5/4/2022, 14:56

    Olá,

    Também é preciso compreender o código partilhado, não se deve limitar a copiar e colar.

    Para o que pretende, onde tem:
    Código:
        fncCaminhoTabelaLigada = Replace(CurrentDb.TableDefs(NomeTabela).Connect, ";DATABASE=", "")

    altere por:
    Código:
        fncCaminhoTabelaLigada = Replace(CurrentDb.TableDefs(NomeTabela).Connect, "Excel 12.0 Xml;HDR=YES;IMEX=2;ACCDB=YES", "")

    Nota: Não testado, foi a "olho"

    Abraço

    4nderson gosta desta mensagem

    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 5/4/2022, 15:48

    Tens razão, meu caro. Foi uma dúvida meio preguiçosa mesmo.

    Acrescentei um pequeno pedaço (;DATABASE=) e o código se encaixou perfeitamente com a minha necessidade.

    Código:
    fncCaminhoTabelaLigada = Replace(CurrentDb.TableDefs(NomeTabela).Connect, "Excel 12.0 Xml;HDR=YES;IMEX=2;ACCDB=YES;DATABASE=", "")

    Na verdade, pro caminho exibido ficar bem limpo, acabou sendo uma mistura dos dois códigos que você enviou.

    Valeu!
    Grande abraço!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 5/4/2022, 20:50

    Olá Anderson Bitencourt,

    Isso mesmo, toca a por a mão na massa.
    Obrigado pelo retorno, o fórum agradece.

    Abraço

    4nderson gosta desta mensagem

    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 8/4/2022, 05:23

    Caro ahteixeira,

    Tentei de todo jeito que conheço (o que infelizmente não é muito) reduzir o texto exibido no controle, mas fracassei miseravelmente.
    Em vez de mostrar todo o caminho do arquivo, preciso que ele mostre apenas o nome do arquivo (sem extensão).

    Você saberia como?
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 9/4/2022, 08:05

    Olá,

    Pesquise por Replace ou por left e len

    Abraço

    4nderson gosta desta mensagem

    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 10/4/2022, 13:01

    Olá Anderson Bitencourt,

    Também pode ser assim, com uma função.
    Coloque o código abaixo num Módulo:
    Código:
    Public Function fncRetiraExt(sCaminho As String) As String
    ' Autor ..: Alvaro Teixeira (ahteixeira)
    ' Código .: fncRetiraExt
    ' Data ...: 10-04-2022
    ' Para ...: MaximoAccess.com
    ' Obs ....: Retirar extensão do ficheiro
    Dim i%

        i = InStrRev(sCaminho, ".")
        If i > 0 Then fncRetiraExt = Left(sCaminho, i - 1)

    End Function

    Depois será fazer a chamada da função, por exemplo:
    Código:
    =fncRetiraExt(StringCaminhoParaRetirarExtensao)

    Abraço
    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 10/4/2022, 16:29

    Muito obrigado, meu caro!

    Isso com certeza resolve o problema da extensão, mas ainda continua aparecendo o diretório do arquivo.
    A falha é minha, acho que não tenho me expressado muito bem.

    Estava assim: D:\Pasta1\Pasta2\Pasta3\NomeDoArquivo.xlsx

    Ficou assim: D:\Pasta1\Pasta2\Pasta3\NomeDoArquivo

    O ideal seria apenas assim: NomeDoArquivo
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 10/4/2022, 17:06

    Olá,

    Não tinha percebido bem a última pergunta, só estava a tirar a extensão.
    Para o que pretende será assim:
    Código:
    Public Function fncRetiraNomeFicheiro(sCaminho As String) As String
    ' Autor ..: Alvaro Teixeira (ahteixeira)
    ' Código .: fncRetiraExt
    ' Data ...: 10-04-2022
    ' Para ...: MaximoAccess.com
    ' Obs ....: Retirar nome de ficheiro do caminho completo
    Dim i%, j%, sTmp$

        i = InStrRev(sCaminho, ".")
        j = InStrRev(sCaminho, "\")

        If i > 0 Then sTmp = Left(sCaminho, i - 1)
        If j > 0 And Len(sTmp) > 0 Then sTmp = Mid(sTmp, j + 1, Len(sTmp))
       
        fncRetiraNomeFicheiro = sTmp

    End Function

    Está na hora de começar a "por a mão na massa" Wink

    Abraço
    4nderson
    4nderson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 62
    Registrado : 25/03/2022

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  4nderson 10/4/2022, 17:15

    É exatamente isso aí!
    Grande ahteixeira!

    Gratidão!!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7613
    Registrado : 15/03/2013

    [Resolvido]Selecionar base de dados vinculada ao iniciar o Access Empty Re: [Resolvido]Selecionar base de dados vinculada ao iniciar o Access

    Mensagem  Alvaro Teixeira 10/4/2022, 17:16

    cheers

      Data/hora atual: 24/9/2022, 21:35