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

    [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Compartilhe

    Edson1974
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 158
    Registrado : 10/05/2011

    Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  Edson1974 em Dom 29 Maio 2011, 19:42

    Boa tarde a todos.
    Encontrei um código em VBA para capturar o caminho de imagens que são visualizadas em um form, ou seja, armazeno o caminho da imagem na tabela, enfim, quando clico no botão que executa o código o mesmo está dando um erro, é destacado o comando GetOpenFileName e apresenta a seguinte mensagem "Método ou membro de dados não encontrado", alguém saberia me responder o porque desta mensagem.

    O código está abaixo.

    Public Function CapturarCaminhoImagem() As String
    Dim Filter As String, Title As String
    Dim FilterIndex As Integer
    Dim Filename As Variant
    ' Define o filtro de procura dos arquivos
    Filter = "Arquivos IMAGENS (*.jpg),*.jpeg,"
    ' O filtro padrão é *.*
    FilterIndex = 3
    ' Define o Título (Caption) da Tela
    Title = "Selecione um arquivo"
    ' Define o disco de procura
    ChDrive ("C")
    ChDir ("C:")
    ' Abre a caixa de diálogo para seleção do arquivo com os parâmetros
    Filename = Application.GetOpenFilename(Filter, FilterIndex, Title)
    ' Reseta o Path
    ChDrive (Left(Application.DefaultFilePath, 1))
    ChDir (Application.DefaultFilePath)
    End With
    ' Abandona ao Cancelar
    If Filename = False Then
    MsgBox "Nenhum arquivo foi selecionado."
    Exit Function
    End If
    ' Retorna o caminho do arquivo
    OpenFileDialog = Filename
    End Function

    Muito obrigado.

    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  criquio em Dom 29 Maio 2011, 20:01

    Verifique nas referências se está marcada a referência Microsoft Access 12.0 Object Library, aonde 12.0 é a versão do 2007. Se o seu for anterior, será menor e se for o 2010, será 14.0


    .................................................................................
    Meu novo site: [Você precisa estar registrado e conectado para ver este link.]

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.


    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  vieirasoft em Dom 29 Maio 2011, 20:07

    Ou então procurara junto de quem fez o exemplo. às vezes é o simples.

    Edson1974
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 158
    Registrado : 10/05/2011

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  Edson1974 em Dom 29 Maio 2011, 20:11

    Pois é Vieira, quem me dera se eu tivesse essa informação, realmente seria muito mais simples.

    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  criquio em Dom 29 Maio 2011, 20:15

    Se você pesquisar no help do vba do Access por FileOpen ou FilePicker, encontrará uma solução praticamente pronta. Será só adaptar.


    .................................................................................
    Meu novo site: [Você precisa estar registrado e conectado para ver este link.]

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.


    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  vieirasoft em Dom 29 Maio 2011, 20:33

    Você pretende colocar as fotos num form?

    Mc Feba
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 30/05/2011

    Re: Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  Mc Feba em Seg 30 Maio 2011, 04:09

    Edson ...
    É bem simples, esta msg se da por falta da declaração o GetOpenFileName. Veja como utilizo em minhas aplicações.
    Em um Módulo
    Public Type OPENFILENAME
    lStructSize As Long
    hwndOwner As Long
    hInstance As Long
    lpstrFilter As String
    lpstrCustomFilter As String
    nMaxCustomFilter As Long
    nFilterIndex As Long
    lpstrFile As String
    nMaxFile As Long
    lpstrFileTitle As String
    nMaxFileTitle As Long
    lpstrInitialDir As String
    lpstrTitle As String
    Flags As Long
    nFileOffset As Integer
    nFileExtension As Integer
    lpstrDefExt As String
    lCustData As Long
    lpfnHook As Long
    lpTemplateName As String
    End Type
    Public Const OFN_FILEMUSTEXIST = &H1000
    Public Const OFN_HIDEREADONLY = &H4
    Public Const OFN_PATHMUSTEXIST = &H800
    Const cTAMANHO = 11
    Public Declare Function GetOpenFileName Lib "comdlg32.dll" _
    Alias "GetOpenFileNameA" (lpofn As OPENFILENAME) As Long
    Public Declare Function GetPrivateProfileString Lib "kernel32" Alias _
    "GetPrivateProfileStringA" (ByVal lpApplicationName As String, _
    ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, _
    ByVal nSize As Long, ByVal lpFileName As String) As Long
    Public Declare Function WritePrivateProfileString Lib "kernel32" Alias _
    "WritePrivateProfileStringA" (ByVal lpApplicationName As String, _
    ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
    Public Declare Function FindWindow Lib "user32" Alias _
    "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As Long) As Long
    Public Declare Function SendMessage Lib "user32" Alias _
    "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, _
    ByVal wParam As Long, ByVal lParam As Long) As Long

    Public Function Buscar(lngHwnd As Long, strTítulo As String, strPastaInicial As String, strFiltro As String) As String

    Dim filebox As OPENFILENAME
    Dim result As Long
    With filebox
    .lStructSize = Len(filebox)
    .hwndOwner = lngHwnd
    .hInstance = 0
    .lpstrFilter = strFiltro & vbNullChar & _
    "Todos os Arquivos (*.*)" & vbNullChar & "*.*" & vbNullChar & vbNullChar
    .nMaxCustomFilter = 0
    .nFilterIndex = 1
    .lpstrFile = Space(256) & vbNullChar
    .nMaxFile = Len(.lpstrFile)
    .lpstrFileTitle = Space(256) & vbNullChar
    .nMaxFileTitle = Len(.lpstrFileTitle)
    .lpstrInitialDir = strPastaInicial & vbNullChar
    .lpstrTitle = strTítulo & vbNullChar
    .Flags = OFN_PATHMUSTEXIST Or OFN_FILEMUSTEXIST Or OFN_HIDEREADONLY
    .nFileOffset = 0
    .nFileExtension = 0
    .lCustData = 0
    .lpfnHook = 0
    End With
    result = GetOpenFileName(filebox)
    If result <> 0 Then
    Buscar = Left(filebox.lpstrFile, InStr(filebox.lpstrFile, vbNullChar) - 1)
    Else
    Buscar = ""
    End If
    End Function

    No Formulário
    Private Sub cmd_Localizar_Click()
    Dim strCaminho As String
    Dim strPastaInicial As String
    strPastaInicial = "C:\Meus Documentos"
    strCaminho = Buscar(Me.hWnd, "Inserir Imagem", strPastaInicial, _
    "Arquivos gráficos (*.bmp; *.gif; *.jpg)" & vbNullChar & "*.bmp; *.gif; *.jpg")
    If Len(strCaminho) > 0 Then
    Me.txtCaminho = strCaminho
    Me.ctrImagem.Picture = Me.txtCaminho
    End If
    End Sub
    Veja de onde retirou o exemplo e localize la esta função, com certeza ira encontrar lá.
    Abraços,

    Edson1974
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 158
    Registrado : 10/05/2011

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  Edson1974 em Seg 30 Maio 2011, 10:09

    Bom dia a todos.

    Vieria, isso mesmo, colocarei as fotos em um form.

    Mc Feba, muito obrigado pela dica, irei testar e darei um retorno.

    Obrigado a todos.

    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  vieirasoft em Seg 30 Maio 2011, 10:44

    Bom eu tenho um sistema bem mais simples para isso. Se não der certo o anterior, apite.

    Edson1974
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 158
    Registrado : 10/05/2011

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  Edson1974 em Seg 30 Maio 2011, 20:25

    Boa tarde a todos.

    O código enviado pelo Mc Feba funcionou perfeitamente mas isso não impede do Vieira postar o que ele comentou sendo mais simples, mas de qualquer forma agradeço aos mestres pela ajuda .

    Valeu.

    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  vieirasoft em Seg 30 Maio 2011, 20:28

    Veja no repositório de exemplos, mas se resolveu está resolvido. Um grande abraço. Não esqueça o resolvido.

    Edson1974
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 158
    Registrado : 10/05/2011

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  Edson1974 em Seg 30 Maio 2011, 20:30

    Valeu Vieira grande abraço.

    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  vieirasoft em Seg 30 Maio 2011, 20:40

    Um grande abraço para si também. Qualquer coisa, apite.

    Mc Feba
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 30/05/2011

    [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  Mc Feba em Ter 31 Maio 2011, 03:55

    Obrigado pelo retorno amigo, e precisando estaremos por aqui.

    Abraços,

    Pericles
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 1
    Registrado : 28/08/2012

    Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  Pericles em Qua 25 Set 2013, 09:01

    Olá Pessoa,

    Vieira, por gentileza, poderia me dizer como localizo o exemplo mencionado que esta no Repositório de Exemplos?

    Abraços

    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  vieirasoft em Ter 01 Out 2013, 13:09

    Vou enviar-lhe um exemplo daqui a pouco. Coloco aqui.

    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7125
    Registrado : 11/05/2010

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  vieirasoft em Ter 01 Out 2013, 13:22

    Aqui está. Cumprimentos
    Anexos
    Fotos.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (148 Kb) Baixado 128 vez(es)

    prooffice
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 16
    Registrado : 22/02/2013

    Vieira, mostrar miniatura de arquivo em corel?

    Mensagem  prooffice em Qua 20 Nov 2013, 11:51

    Olá amigos, já tenho em uma aplicação a busca por arquivos (vinculação de endereço) e quando eu clico ela abre o arquivo original. Gostei do exemplo do Sr Vieira será que posso fazer o mesmo com um arquivo corel? isto é mostrar uma miniatura vinculada a um endereço?

    caio_ccs1
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 11/07/2013

    Help

    Mensagem  caio_ccs1 em Ter 11 Mar 2014, 20:54

    Vieira,

    Acompanhei o tópico, já utilizava esse código para abrir uma tela e selecionar a foto, porém migramos para o 2010 e começou a dar erros.

    Descobre que precisava alterar a declaração para Declare ptrSafe Function... Ai funcionou... Mas não abre a telinha para selecionar a foto.

    Já coloquei a referência Microsoft 14.0 Object Library, mas sem chance, sou novo no access, preciso entregar um cadastro e estou preso nisso... Vc conhece algo sobre isso?

    Nota: Não existe informação de erro e nem para o código, apenas vc clica e a telinha não abre!

    Grato.

    rui.o.pereira
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 20
    Registrado : 19/01/2014

    Tenho o mesmo problema..com o getopenfilename.. Mas a caixa abre...Só não fica "à frente" das outras todas...

    Mensagem  rui.o.pereira em Sex 19 Set 2014, 17:06

    Tenho o mesmo problema..com o getopenfilename.. Mas a caixa abre...Só não fica "à frente" das outras todas...

    clico no botão "Abrir"    Seleciono o ficheiro que quero.... tudo, muito bem....
    Mas depis não aparece o caminho em DOS na caixa de texto
    [Você precisa estar registrado e conectado para ver esta imagem.]
    no "DEBUG"
    [Você precisa estar registrado e conectado para ver esta imagem.]




    Quando vou à ajuda.. vai para aqui (não tem nada a ver ....Acho eu...)
    [Você precisa estar registrado e conectado para ver este link.]

    vi um exemplo...
    em que aparece Aplication.getopenfilename()


    [Você precisa estar registrado e conectado para ver este link.]

    agora pergunto:

    isto é um método que pode ser chamado por um objecto do tipo "application" ou é estático e só pode ser "application.getopenfilename()" mesmo assim, isto bloqueia....

    Isto já aconteceu a alguém?

    Mc Feba
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 30/05/2011

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  Mc Feba em Sex 19 Set 2014, 21:27

    Boa Tarde ....

    Amigão faltou você informar o que o botão tem de abrir, ou seja, o nome do campo no getopenfilename, pois do jeito q esta ele da o get mas não encontra o parâmetro para abrir.
    Experimente ver o código que postei acima e tente entender, qualquer coisa estamos aqui.


    Abraços,


    .................................................................................
    Alexandro de Andrade
    SAP consultant
    VBA Developer
    [Você precisa estar registrado e conectado para ver este link.]

    rui.o.pereira
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 20
    Registrado : 19/01/2014

    Re: [Resolvido]Capturar o Caminho da Imagem com GetOpenFilename

    Mensagem  rui.o.pereira em Sab 20 Set 2014, 10:07

    Mc FEba, Obrigado pela atenção,

    Mas não consigo abrir o teu site..

    Podes dar-me um pequeno exemplo?


    Ps. Esquece, tá aqui neste tópico, lá em cima....


    desculpa, e obrigado.

      Data/hora atual: Qua 07 Dez 2016, 20:08