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]Pesquisar dados multiplos de um campo texto

    avatar
    giankarlo.bra
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 29/04/2011

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  giankarlo.bra 4/6/2014, 14:45

    Bom dia a todos!
    Estou com um problema sério e gostaria que alguém pudesse me auxiliar a resolver este problema que passo a descrever:

    1) recebo uma planilha excel vinda de um sistema de alimentação nacional (fechado).

    2) deste sistema recebo em um campo tipo texto 3 informações contidas dentro dele que são assim colocadas:

            regional (cidade/orgão)

    3) preciso fazer uma consulta em que os critérios serão oferecidos via formulário para que o usuário possa definir qual a regional, qual a cidade e qual o orgão ele deseja o relatório.

    OBS: Existe diferenças entre quantidade de espaços entre comarca e o primeiro parênteses. Não estou usando nenhuma linha de programação para criar este sisteminha para gerar estes relatórios ok? Está sendo tudo feito no modo nativo do access 2010 com windows 7 32 bits

    Se alguém puder me ajudar eu ficarei imensamente agradecido.

    Giancarlo
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  Dilson 9/6/2014, 14:22

    Bom dia, seja bem vindo ao fórum!

    Sua solução está a partir deste tópico:
    split - [Resolvido]Função Split para desmembrar dados de string e auto popular outros campos

    No caso, uma ideia será prover uma partição deste dado em colunas distintas usando Split e retirando caracteres usando Replace. Com os dados em colunas distintas, você será capaz de atribuir combobox para realizar o filtro.


    Estude o conteúdo do tópico e tente entender como funciona e tente implementar.


    Se resolver, retorne aqui e marque resolvido. Da mesma, se enfrentar dificuldade, retorne aqui e fundamente onde não consegue avançar, que ajudaremos.
    avatar
    giankarlo.bra
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 29/04/2011

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  giankarlo.bra 9/6/2014, 16:01

    Muito interessante, mas ainda me restou uma dúvida.

    Eu teria que fazer uma função para cada um dos itens que eu desejo extrair do campo texto que eu tenho?
    Eu irei estar alimentando uma nova coluna a cada função criada?

    ---------------------------------------------------------
    Public Function fncModelo(strFrase As String) As String
    Dim modelo
    modelo = Split(Mid(strFrase, InStr(strFrase, "modelo") + 6), " ")
    fncModelo = Replace(modelo(0), ",", "")
    End Function

    E depois criei uma consulta com

    UPDATE carros SET Modelo = fncModelo([Descricao]);
    -----------------------------------------------------------

    Se não for pedir muito, teria como vc me comentar cada uma das linhas desta função? Acontece que eu não tenho muita familiaridade com a parte programável do access.

    Agradeço
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  Dilson 10/6/2014, 11:39

    Entendo.
     
    Olha essa função que expôs faz o seguinte:
     
    Recebe um valor do tipo texto por parâmetro:
     
    Public Function fncModelo(Entra por aqui) As String
     
    Armazena esse valor na variável chamada modelo, que, usando a função Split particiona a string de acordo com o delimitador indicado:
     
    Vou iniciar por uma parte e depois avanço, explicando o incremento. simplificando a linha de código, veja:
     
    modelo = Split(strFrase = Frase que entrou, " " = Delimitador)
     
    Então veja que o delimitador é um espaço representado por aspas duplas (com um espaço) e com isso a cada espaço na frase a função Split cria um elemento para um vetor, no caso, o vetor é a variável modelo.
     
    Então para entender isso, observe a frase:
     
    “Quero saber da marca e modelo”
     
    Após passar pela Split, a variável ficaria com o seguinte valor:
     
    modelo(0) = Quero
    modelo(1) = saber
    modelo(2) = da
    modelo(3) = marca
    modelo(4) = e
    modelo(5) = modelo
     
    Daí instanciando a variável e o número do elemento, estará usando a parte da palavra que melhor lhe convier.
     
    Para melhorar seu entendimento, se eu quisesse obter a frase "Quero modelo", bastaria concatenar numa MsgBox o elemento 0 com o elemento 5, assim:
     
    MsgBox modelo(0) & " " & modelo(5)
     
    Só que nesta função, o Mestre Avelino decidiu incrementar usando as funções inStr e Mid:
     
    Resumidamente a função inStr faz comparações. Veja abaixo que o objetivo é procurar a palavra modelo dentro do valor que entrou por parâmetro lá em cima:
     
    modelo = Split(strFrase, InStr(strFrase, "modelo"), " ")
     
    Atente que aqui estamos falando literalmente em achar a palavra modelo e não a variável modelo, ex:
     
    “Quero saber da marca e modelo
     
    De maneira que se a frase na variável fosse:
     
    “Quero saber da marca somente”
     
    Não retornaria nada.
     
    Então depois disso entra em ação a função Mid para a partir do sexto caracteres retornar o resultado:
     
    modelo = Split(Mid(strFrase, InStr(strFrase, "modelo") + 6), " ")
     
    E por ultimo a função Replace para substituir todas as virgulas por nada dentro do elemento 0 da variável modelo:


    fncModelo = Replace(modelo(0), ",","")

     
    Percebi que para seu caso basta usar Split e Replace obedecendo os mesmos moldes criado pelo Avelino.
     
    Anexo um pequeno exemplo feito a partir de suas informações:
    https://dl.dropboxusercontent.com/u/8080696/Integrado/Split_Desmembrar.rar


    Leia sobre inStr:
    http://office.microsoft.com/pt-br/access-help/funcao-instr-HA001228857.aspx?CTT=1

    Leia sobre Mid:
    http://office.microsoft.com/pt-br/access-help/funcao-mid-HA001228881.aspx?CTT=1
    avatar
    giankarlo.bra
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 29/04/2011

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  giankarlo.bra 10/6/2014, 14:00

    Dilson;

    Maravilha, o modelo que vc me enviou bate direitinho com a minha necessidade, veja como estão os dados no meu campo texto

    Gurupi (GURUPI/DECA)

    Onde:
    Gurupi - Comarca
    Gurupi - Cidade
    DECA - Delegacia

    Será que voce poderia me dar mais uma ajuda?

    Em posse dessas informações eu preciso agora informar a Regional de cada uma das comarcas. Tentei fazer isso via consulta, mas não me permite fazer inclusão ou alteração nos registros. Teria alguma forma via programação de fazer essa atualização na minha base de dados? Algo parecido com:

    Se Comarca = Gurupi
    Então Regional = Gurupi

    Se comarca = Araguaina
    Então Reginal = Araguaina

    Bem isso tá bem arcaico mas a grosso modo seria algo parecido com isso, deu pra entender o meu problema?

    Se tiver como me de mais essa força ok?

    Valeu!!!
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  Dilson 10/6/2014, 21:17

    Já agora embaraçou.

    No inicio do caso tratamos de regional(cidade/órgão)

    Agora preciso que descreva melhor.

    Seria:

    regional = comarca ?
    cidade = cidade ?
    órgão = Delegacia ?

    Como é ?

    Mostre em uma tabela como pensa usar um loop via programação.

    Aguardamos.
    avatar
    giankarlo.bra
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 29/04/2011

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  giankarlo.bra 16/6/2014, 19:30

    Vou Explicar melhor:

    No campo texto da tabela que eu recebo em excel e importo para o Access o campo localidade vem com as seguintes informações:

    comarca (cidade/delegacia) - ok?

    Aqui já resolvemos o problema, só consegui resolver até cidade, não consegui extrair a delegacia mas mesmo assim ainda continuo tentando.

    Agora, a comarca, a cidade e a delegacia pertencem a uma Regional, esta regional está cadastrada em uma outra tabela já com as comarcas, cidades e delegacias relacionadas.

    Eu só queria poder extrair já os dados do campo texto já incluindo a Regional a qual elas pertencem, mas já estou percebendo que isso vai ser muito complicado, então eu optei por incluir as Regionais somente quando da consulta e deu certo.

    No meu processo existe dois momentos de importação de planilhas, um quando da inclusão e outro quanto da atualização. Sendo que quando da atualização existem 02 variantes que são:

    1 - Se tem número de processo já incluído - ok
    2 - Não tem número de processo incluído - separar em uma tabela

    Mas isso eu vou fazer a mão... mas se houvesse como eu pudesse fazer essa atualização puxando já da minha planilha de atualização e separando os números de processos não coincidentes iria ser muito bom...

    Será que voce entendeu o meu desejo?
    avatar
    giankarlo.bra
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 29/04/2011

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  giankarlo.bra 23/6/2014, 13:45

    Valeu Dilson... eu forcei né?
    Mas mesmo assim muito obrigado, me ajudou muito e pude aprender um pouco mais sobre a parte de programação do access, vou estudar mais para poder dar conta de resolver esses probleminhas.

    Valeu de montão mesmo!!!!
    avatar
    giankarlo.bra
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 54
    Registrado : 29/04/2011

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  giankarlo.bra 23/6/2014, 14:24

    Resolvido
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  Dilson 23/6/2014, 14:34

    Oi giankarlo,

    Quando passou a mensagem n° 7 eu encontrava-se na cidade de Manaus-AM e fiquei de ver a sua ideia quando voltasse, que acabei voltando e perdendo o tópico de vista.

    Se resolveu por completo, então está resolvido. Parabéns pelo esforço na busca da solução.

    Abraço!

    Conteúdo patrocinado


    [Resolvido]Pesquisar dados multiplos de um campo texto Empty Re: [Resolvido]Pesquisar dados multiplos de um campo texto

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 06:04