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


3 participantes

    [Resolvido]Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto?

    avatar
    tekkinho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 5
    Registrado : 28/12/2011

    [Resolvido]Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto? Empty Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto?

    Mensagem  tekkinho 28/12/2011, 18:38

    Boas,
    O meu projecto encalhou na seguinte falha:

    Eu tenho uma só caixa de texto ("cxt_dados"), que tem vários dados separados por vírgulas ex. "Jorge, 31 anos, masculino", estes dados foram inseridos automaticamente através da leitura de um código de barras (QRCode).
    Agora o meu problema é que depois de actualizar da caixa de texto "cxt_dados", o access deveria separar estes dados por várias caixas de texto independentes ex: "cxt_nome", "ctx_idade"; ctx_genero".

    Ou seja é uma operação inversa a função CONCATENAR, ou seja uma espécie de função "texto para colunas" do Excel
    Tal é possível?
    Grato pela atenção.
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto? Empty Re: [Resolvido]Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto?

    Mensagem  criquio 28/12/2011, 19:06

    Você pode usar a função Split para separar pelo marcador vírgula. O Split separa em vetores começando do 0. Se você tem três elementos separados por vírgula, terá os vetores 0, 1 e 2. Tendo eles separados, bastará jogá-los nos campos:

    Me.Campo1 = vet(0)
    Me.Campo2 = vet(1)
    Me.Campo3 = vet(2)


    vet é o nome que eu dei para a minha variável. Dê uma pesquisada no F1 de um módulo vba por Split. Caso tenha dúvidas, volte a se manifestar.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    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.

    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    [Resolvido]Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto? Empty Re: [Resolvido]Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto?

    Mensagem  Alexandre Neves 28/12/2011, 19:09

    Boa noite, tekkinho, e bem-vindo ao fórum

    Utilize esta função:

    Function Extrair(str As String, Campo As String) As String
    'criada por Alexandre Neves
    'em 2011-12-28
    'para tekkinho
    'do fórum MaximoAccess
    Dim Inicio As Integer
    Select Case Campo
    Case "Nome"
    Extrair = Mid(str, 1, InStr(1, str, ",") - 1)
    Case "Idade"
    Inicio = InStr(1, str, ",") + 1
    Fim = InStr(Inicio, str, ",")
    Extrair = Mid(str, Inicio, Fim - Inicio)
    Case "Género"
    Inicio = InStr(1, str, ",") + 1
    Inicio = InStr(Inicio, str, ",")
    Extrair = Mid(str, Inicio + 1, Len(str) - Inicio)
    End Select
    End Function

    Para uso, coloque
    cxt_Nome= Extrair(cxt_dados, "nome")
    ctx_idade= Extrair(cxt_dados, "idade")
    ctx_genero= Extrair(cxt_dados, "Género")
    avatar
    tekkinho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 5
    Registrado : 28/12/2011

    [Resolvido]Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto? Empty Solução

    Mensagem  tekkinho 29/12/2011, 00:45

    Muito obrigada pelas vossas sugestões e pelo vosso tempo, foi através delas que cheguei a uma solucção, utilizando a função split.


    Function vet1(ByVal texto As String) As String
    Dim sParts() As String
    sParts = Split(texto, ",")
    vet1 = sParts(0)
    End Function
    Function vet2(ByVal texto As String) As String
    Dim sParts() As String
    sParts = Split(texto, ",")
    vet2 = sParts(1)
    End Function

    Envio em anexo o exemplo access resolvido.

    Mais uma vez grato pela atenção.



    Conteúdo patrocinado


    [Resolvido]Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto? Empty Re: [Resolvido]Existe alguma forma de retirar dados de uma só caixa de texto (estes separados por virgulas) para várias caixas de texto?

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/4/2024, 15:07