MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    pegar o caminho da pasta

    Compartilhe

    baldocchi
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 03/11/2014

    pegar o caminho da pasta

    Mensagem  baldocchi em Qui 11 Ago 2016, 15:18

    Pessoal,

    Eu peguei um código no site da microsoft para selecionar arquivos. Até aí tudo bem, o que eu não sei fazer é pegar o caminho da pasta.

    Olha o código abaixo:

    Private Sub CmdAbrirPasta_Click()
    ' This requires a reference to the Microsoft Office 11.0 Object Library.

    Dim fDialog As Office.FileDialog
    Dim varFile As Variant

    ' Clear the list box contents.
    'Me.FileList.RowSource = ""

    ' Set up the File dialog box.
    Set fDialog = Application.FileDialog(msoFileDialogFilePicker)
    With fDialog
    ' Allow the user to make multiple selections in the dialog box.
    .AllowMultiSelect = True

    ' Set the title of the dialog box.
    .Title = "Select One or More Files"

    ' Clear out the current filters, and then add your own.
    .Filters.Clear
    .Filters.Add "Access Databases", "*.MDB"
    .Filters.Add "Access Projects", "*.ADP"
    .Filters.Add "All Files", "*.*"

    ' Show the dialog box. If the .Show method returns True, the
    ' user picked at least one file. If the .Show method returns
    ' False, the user clicked Cancel.
    If .Show = True Then

    ' ' Loop through each file that is selected and then add it to the list box.
    For Each varFile In .SelectedItems
    TxtCam.Value = varFile
    'Me.FileList.AddItem varFile
    Next
    Else
    MsgBox "You clicked Cancel in the file dialog box."
    End If
    End With
    End Sub


    tem que fazer referência para a Biblioteca Microsoft Office XX Object Library..

    Por favor, alguém pode me ajudar com isso? Obrigado

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: pegar o caminho da pasta

    Mensagem  ahteixeira em Qui 11 Ago 2016, 15:24

    Olá em que consiste "pegar o caminho da pasta".
    Pode explicar melhor?
    Abraço

    baldocchi
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 03/11/2014

    Re: pegar o caminho da pasta

    Mensagem  baldocchi em Sex 12 Ago 2016, 11:06

    eu estou tentando fazer um programa que faça uma busca personalizada dentro de pastas que o usuário escolher.

    O código que eu aprendi aqui com nossos colegas mostra como pegar todos os arquivos de dentro de uma pasta.

    Eu queria digitar algo: "mem" e buscar todos os arquivos que tenham "mem" no meio, ou buscar todos os ".xlsx", e assim por diante.

    é quase um gerenciador de arquivos do Windows.

    Como os usuários são muito fracos em Windows, eu queria criar esse idéia para facilitar o trabalho de todos.

    é nisso que consiste minha questão.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2302
    Registrado : 14/08/2013

    Re: pegar o caminho da pasta

    Mensagem  FabioPaes em Sex 12 Ago 2016, 14:32

    Para pegar o caminho da pasta: Digamos que vc ja tenha o Local completo do arquivo em uma variavel chamada CaminhoDoFicheiro (C:\Pasta123\Teste.xls)

    Basta colocar algo assim:
    MsgBox Left(CaminhoDoFicheiro, (Len(CaminhoDoFicheiro) - Len(Dir(CaminhoDoFicheiro))))

    Agora, sua mensagem anterior leva a outro assunto...
    Veja esse topico: [Você precisa estar registrado e conectado para ver este link.]


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    baldocchi
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 03/11/2014

    Re: pegar o caminho da pasta

    Mensagem  baldocchi em Sex 12 Ago 2016, 18:39

    muito obrigado, vou tentar e te falo.

    Fique em Paz!

    Abs

    baldocchi
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 03/11/2014

    Re: pegar o caminho da pasta

    Mensagem  baldocchi em Sex 12 Ago 2016, 18:53

    Amigo,

    Funcionou perfeitamente.

    Agora, posso fazer outra pergunta?

    É o seguinte, eu tenho o código abaixo que varre as pastas e subpastas atrás de todos os arquivos.
    Eu gostaria de fazer uma pesquisa por parte do nome.
    Você sabe como eu posso fazer isso por favor?

    Function ListaArquivosESubPastas(ByVal path$) As String
    On Error GoTo ProcErr
    Dim Fsfd, Fd, Sfd, f1, Fls, Itn$
    If path = "" Then Exit Function
    Set Fsfd = CreateObject("Scripting.FileSystemObject")
    Set Fd = Fsfd.GetFolder(path$)
    xFd = strCaminho
    Do While Fd.path <> ".."
    For Each Fls In Fd.files
    Debug.Print Fd.path$ & "\" & Fls.Name
    xFd = Fd
    Next Fls
    LocArq
    For Each Sfd In Fd.SubFolders
    f1 = f1 + 1

    Itn = Sfd.Name

    lstArquivos.AddItem Fd.path$ & "\" & Itn

    ListaArquivosESubPastas Fd.path$ & "\" & Itn & "\"

    lstArquivos.Requery
    txtTotArq.Requery
    ' LocArq

    Next
    GoSub Proc_Sai
    Loop
    Proc_Sai:
    Set Fsfd = Nothing: Set Fd = Nothing: Set Sfd = Nothing: Set f1 = Nothing
    Exit Function
    ProcErr:
    If Err = 76 Then Resume Proc_Sai
    MsgBox Err & vbCr & Err.Description
    Resume Next

    End Function
    Function LocArq()
    Dim FileSystem As Object
    Dim Folder As Object
    Dim File As Variant

    Me.Requery

    Set FileSystem = CreateObject("Scripting.FileSystemObject")

    Set Folder = FileSystem.GetFolder(xFd)

    For Each File In Folder.files
    lstArquivos.AddItem File.Name
    'lstArquivos.Requery
    Next
    End Function

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: pegar o caminho da pasta

    Mensagem  ahteixeira em Sab 10 Set 2016, 00:10

    Olá Leandro,
    Para não misturar temas, será melhor criar um tópico novo.
    Se desejar, pode fazer referencia a este.
    Obrigado pelo retorno e não se esqueça de dar este tópico como resolvido.
    Abraço

      Data/hora atual: Dom 04 Dez 2016, 12:15