MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Abrir pasta referente ao registro

    Compartilhe
    avatar
    Caio
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 301
    Registrado : 27/04/2015

    [Resolvido]Abrir pasta referente ao registro

    Mensagem  Caio em Sex 18 Mar 2016, 20:34

    Boa tarde,
    Tenho um formulário de leitura, que somente pode-se ler um registro...
    a ideia é, um botão que quando clicasse abrisse a pasta refente o registro que estou visualizando no formulário.
    Porém preciso que puxe a pasta pelo número da tarefa...

    Na pasta está: Tarefa &(Numerodatarefa), ex.: Tarefa 1098

    E no campo do formulário.: 1098
    avatar
    Gabriel Brunichaki
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 139
    Registrado : 11/12/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Gabriel Brunichaki em Ter 22 Mar 2016, 15:08

    Bom dia/tarde!

    Para abrir uma pasta ou executável, se utiliza a função shell:

    Dim filePath As String
    filePath = "C:\CaminhoDasPastas\Tarefa " & Me.NumeroDaTarefa
    Shell "explorer " & filePath, vbMaximizedFocus

    Se quiser abrir um executável (como a calculadora do Windows, por exemplo), basta indicar seu nome:

    Shell "calc.exe"


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein
    avatar
    Caio
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 301
    Registrado : 27/04/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Caio em Ter 22 Mar 2016, 20:14

    Resolvido!
    avatar
    Caio
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 301
    Registrado : 27/04/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Caio em Ter 29 Mar 2016, 20:39

    E como da fazer da erro si não achar a pasta?
    Atualmente abri a pasta Documentos.

    Preciso que apareça um mensagem falando que a pasta não foi achada.
    avatar
    Gabriel Brunichaki
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 139
    Registrado : 11/12/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Gabriel Brunichaki em Ter 29 Mar 2016, 20:44

    If Len(Dir(filePath, vbDirectory) & "") = 0 Then
      MsgBox "Caminho não encontrado", vbCritical, "Erro!"
    End If


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein
    avatar
    Caio
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 301
    Registrado : 27/04/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Caio em Ter 29 Mar 2016, 20:58

    aparece o erro, mais mesmo assim abre a pasta Documentos!
    avatar
    Gabriel Brunichaki
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 139
    Registrado : 11/12/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Gabriel Brunichaki em Ter 29 Mar 2016, 21:03

    Tu tem que colocar uma condição, Caio. Adiciona um Else nesse If que te passei e dentro do Else que tu vai chamar a função Shell, ou seja, se a condição for igual a 0, exibe o erro, se não, (se existir o caminho) abre a pasta.

    Tenta ae


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein
    avatar
    Caio
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 301
    Registrado : 27/04/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Caio em Ter 29 Mar 2016, 21:10

    Veja si é isso:



    Private Sub Comando6_Click()
    Dim filePath As String
    filePath = "G:\EngProc\ArquivosEP\09 - Indicadores\Relatório de rastreabilidade de processo\Tratativas\Tarefa " & Me.txt_ids
    Shell "explorer " & filePath, vbMaximizedFocus
    Else
    If Len(Dir(filePath, vbDirectory) & "") = 0 Then
    MsgBox "Tarefa não encontrada", vbCritical, "Erro!"
    End If
    End Sub

    Pelo que vc mencionou era isso, mais da seguinte mensagem: "Bloco Else sem If".
    avatar
    Gabriel Brunichaki
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 139
    Registrado : 11/12/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Gabriel Brunichaki em Ter 29 Mar 2016, 21:19

    Errou a ordem, apenas... O correto seria:

    Private Sub Comando6_Click()
    Dim filePath As String
    filePath = "G:\EngProc\ArquivosEP\09 - Indicadores\Relatório de rastreabilidade de processo\Tratativas\Tarefa " & Me.txt_ids

    If Len(Dir(filePath, vbDirectory) & "") = 0 Then
    MsgBox "Tarefa não encontrada", vbCritical, "Erro!"
    Else
    Shell "explorer " & filePath, vbMaximizedFocus
    End If
    End Sub


    As linhas acima leem-se:

    Se { If } o caminho { Len(Dir(filePath, vbDirectory) & "") } não existir { = 0 } então { Then }
    Exibe a mensagem de erro { MsgBox "Tarefa não encontrada", vbCritical, "Erro!" }
    Se não { Else }
    Abre a pasta { Shell "explorer " & filePath, vbMaximizedFocus }
    Fim { End If }

    Se tem dúvidas quanto a instrução If/Else, dá uma pesquisada que acha bastante exemplo bacana


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein
    avatar
    Caio
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 301
    Registrado : 27/04/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Caio em Ter 29 Mar 2016, 21:23

    Resolvido.

    Agora entendi como funciona a instrução Else.

    Muito obrigado Gabriel.
    avatar
    Gabriel Brunichaki
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 139
    Registrado : 11/12/2015

    Re: [Resolvido]Abrir pasta referente ao registro

    Mensagem  Gabriel Brunichaki em Ter 29 Mar 2016, 21:24

    Disponha!


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein

      Data/hora atual: Seg 26 Jun 2017, 09:36