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]ordenar Numeros com letraS

    avatar
    kfatima
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 62
    Registrado : 10/07/2011

    [Resolvido]ordenar Numeros com letraS Empty ordenar Numeros com letraS

    Mensagem  kfatima em 16/10/2011, 18:22

    ola pessoal....vi um exemplo nao me lembr se foi aqui..ordenar numeros com letras automaticamente....
    estou tendo de ter um trabalho horrivel..tenho um cadastro de varios itens, pois posso utiliza-los em conjuntos diferentes. Por exemplo, tenh produto A, B, C..e peças como 1, 1a, 1r, 10 , 10t, 10a, 11, 2 , 11b, 11p...as letras é só para diferenciar a peça original. SEguindo o exemplo, o produto A só possui as peças: 1, 1a,10, 10a, 11, 2 ( isso é selecionado normalmente ). As outras não o compoe. O problemas é que tenho de criar uma consulta criar tabela, para separar as peças do produto Até aí tudo bem. Porem tenho de criar um campo chamdo "ordem" nesta tabel criada e ordena-lo manualmente!!!! e depois criar uma nova consulta baseada nesta tabela que vira ordenada pela função VAL(ordem)...ufa!!!!..é terrivel pois terei produto com mais de 100itens!!!!!.....tem algo mais rapido e pratico???
    a saída teria de ser:1,1a,2,10,10a,11.........obrigada..

    *ahhh o campo peça esta como texto e o campo ordem foi definido como numero..inteiro longo...
    criquio
    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  criquio em 16/10/2011, 18:27

    Uma ideia poderia ser você ter dois campos na consulta para separar números de letras e um terceiro campo para juntar tudo novamente. Aí bastaria classificar pelos campos dos números e no formulário bastaria exibir o terceiro campo.


    .................................................................................
    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.

    avatar
    kfatima
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 62
    Registrado : 10/07/2011

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  kfatima em 16/10/2011, 18:35

    ..só nao entendi em como fazer, mas ainda nao vejo jeito, pois tenho diversos campos iniciando pelos numeros: 1a, 1s, 1t, 1aa, 1rr, ..e assim para outros numeros tambem....nao seria mais dificil assim???.como nao perderia informações deste registro?!?!..pois cada registro deste tem mais outras informações...é peça, nome, caracteristicas,, e outras colunas.....entende?
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  Alexandre Neves em 17/10/2011, 08:26

    Olá, Fátima

    Cole estas funções que lhe criei e, na consulta, chame a função NL


    Function NL(NumerosLetras As String) As Double
    'criada por Alexandre Neves, em 2011-10-17, do fórum MaximoAccess
    Dim I As Integer
    NL = 0
    For I = 1 To Len(NumerosLetras)
    NL = NL + ValorPosicao(Mid(NumerosLetras, I, 1))
    Next
    End Function

    Function ValorPosicao(Caracter As String) As Double
    'criada por Alexandre Neves, em 2011-10-17, do fórum MaximoAccess
    Select Case Caracter
    Case "0"
    ValorPosicao = 0.1
    Case "1"
    ValorPosicao = 1
    Case "2"
    ValorPosicao = 2
    Case "3"
    ValorPosicao = 3
    Case "4"
    ValorPosicao = 4
    Case "5"
    ValorPosicao = 5
    Case "6"
    ValorPosicao = 6
    Case "7"
    ValorPosicao = 7
    Case "8"
    ValorPosicao = 8
    Case "9"
    ValorPosicao = 9
    Case "a"
    ValorPosicao = 0.02
    Case "b"
    ValorPosicao = 0.03
    Case "c"
    ValorPosicao = 0.04
    Case "d"
    ValorPosicao = 0.05
    Case "e"
    ValorPosicao = 0.06
    Case "f"
    ValorPosicao = 0.07
    Case "g"
    ValorPosicao = 0.08
    Case "h"
    ValorPosicao = 0.09
    Case "i"
    ValorPosicao = 0.1
    Case "j"
    ValorPosicao = 0.11
    Case "k"
    ValorPosicao = 0.12
    Case "l"
    ValorPosicao = 0.13
    Case "m"
    ValorPosicao = 0.14
    Case "n"
    ValorPosicao = 0.15
    Case "o"
    ValorPosicao = 0.16
    Case "p"
    ValorPosicao = 0.17
    Case "q"
    ValorPosicao = 0.18
    Case "r"
    ValorPosicao = 0.19
    Case "s"
    ValorPosicao = 0.2
    Case "t"
    ValorPosicao = 0.21
    Case "u"
    ValorPosicao = 0.22
    Case "v"
    ValorPosicao = 0.23
    Case "w"
    ValorPosicao = 0.24
    Case "x"
    ValorPosicao = 0.25
    Case "y"
    ValorPosicao = 0.26
    Case "z"
    ValorPosicao = 0.27
    End Select
    End Function
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3515
    Registrado : 04/04/2010

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  Avelino Sampaio em 17/10/2011, 09:03

    Olá

    Crie um campo virtual(NovaOrdem) na consulta , posicionado antes do campo que deseja ordenar.

    exemplo:

    Campo: NovaOrdem: val([peça])
    Classificação: Crescente

    campo: [peça]
    Classificação: crescente

    Sucesso!
    avatar
    kfatima
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 62
    Registrado : 10/07/2011

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  kfatima em 17/10/2011, 16:28

    Avelino, este teste nao da certo pois o campo esta como texto e a função val é para numero .....

    vou tentar o outro,;... da função
    depois eu posto........

    Neves, olhe o link http://dl.dropbox.com/u/39551656/NumerosLEtras.mdb

    Noossa, este exemplo que me passou, consegui nao..ficou dificil de entender....mas por favor este exemplo mostra o que acontece...

    Puxa....mil desculpas, nao vi o exemplo agora que enviou......mas porque quando criei texto e nao deu certo antes??!?!?...voce usou a função aonde ali???

    um detalhe qeu fiz

    aparece assim depois de ter criado na consulta: Expr1: Val([Peca])..ou seja, esse Expr1 aparece depois que dou enter após criar a VAl([peca])


    Última edição por kfatima em 17/10/2011, 16:53, editado 2 vez(es)
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3515
    Registrado : 04/04/2010

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  Avelino Sampaio em 17/10/2011, 16:33

    Dá certo sim, pois eu testei aqui com o texto. Uma pena vc não ter testado.

    Exemplo.

    Val(10p) retorna 10
    val(1r) retorna 1

    e por ai vai

    Como resultado só terei número neste campo e na ordem crescente. Colocando o campo "peça" na ordem crescente também, a consulta se ajustará na ordem que vc deseja.

    Sucesso!
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3515
    Registrado : 04/04/2010

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  Avelino Sampaio em 17/10/2011, 16:43

    Segue exemplo.

    Abra a tabela e veja como esta fora de ordem

    abra a consulta e veja como ficou ordenado.

    baixar exemplo

    Bom estudo!
    avatar
    kfatima
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 62
    Registrado : 10/07/2011

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  kfatima em 17/10/2011, 17:02

    uhuhuhuhuh...aVELINO, DEU CERTO!!!!

    sinceramente nao entendi o porque deu........

    porque repetindo o campo após a função Val deu certo?!?!?!...ouseja,
    voce colocou peça, depois a Val,e depois a peça de novo em ordem crescente..pode me explicar este funcionamento??? ele cancela o anterior????...pois se coocar só a peça e depois a função Val([peça]) nao da nao....

    *só mais uma duvida, abusando de tua boa vontade....tem peça que tem letra, mas queria que as peças com letra ficassem após os numeros...ainda da certo???.....ouseja, teho peças C29, SC8, c22,.....
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3515
    Registrado : 04/04/2010

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  Avelino Sampaio em 17/10/2011, 17:31

    Olá

    Baixe novamente o arquivo, no link acima, que tem a modificação.

    A posição dos campos na consulta tem relevância quando se trata de ordenar. Existe uma hierarquia da esquerda para direita.

    Sucesso!
    avatar
    kfatima
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 62
    Registrado : 10/07/2011

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  kfatima em 17/10/2011, 17:53

    Puxa....é impressionante a contribuição do forum!!!!!!
    Avelino, muito obrigada...jamais imaginaria que poderia ser assim......até a próxima!!!............

    *conseguiria explicar essa loucura: SeImed(Val([peça])=0;100000;Val([peça]))..de onde vem tudo isso!!!!!

    *só mais uma coisinha....implementei aqui no meu exemplo, mas tenho campos com peça: C19,C100,C102,C1.....porem colocou c C100 antes do C19?!?!?!? é pane na função??..tinha de ficar C1,C19,C100,C102..
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3515
    Registrado : 04/04/2010

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  Avelino Sampaio em 18/10/2011, 03:08

    Olá

    Baixe novamente o arquivo, no link acima

    Observe que a loucura acaba de aumentar mais ainda, beirando a esquizofrenia (kkkkkkkkkk)

    Abra a consulta qryTeste e veja o resultado

    Depois abra a consulta qryteste2 e veja os campos de ordenação sendo exibidos. Observe que o campo "posicionar" tem prioridade sobre o campo "contar", na ordenação.

    Para conhecer melhor sobre como estudar estas funções no Access, sugiro que vc assista minha vídeo-aula , no link abaixo:

    Vídeo-aula sobre como estudar com o Access

    Sucesso!
    avatar
    kfatima
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 62
    Registrado : 10/07/2011

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  kfatima em 18/10/2011, 09:10

    simplesmente alucinante e espetacular.....conheço alguns desenvolvedores em access, e TODOS disseram que o Access nao fazia este tipo de coisa....tinha de partir para o java ou até mesmo c++...a cada dia me apaixono por este software, ainda mais sendo "vendido" com tanta categoria por todos aqui do forum. E Avelino, muito obrigada pela ajuda........com certeza todos irão se beneficiar destas dicas.........salvei o video para ver com calma mais tarde.......
    criquio
    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  criquio em 18/10/2011, 09:13

    Olá Kenia! Referente à sua observação sobre o descrédito dos seus conhecidos programadores à cerca do Access, veja nesse pequenino artigo que eu escrevi, uma observação minha sobre o tema:

    http://www.svcsoftwarehouse.com/pressroom-detalhes.php?codigo=3


    .................................................................................
    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.

    avatar
    kfatima
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 62
    Registrado : 10/07/2011

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  kfatima em 19/10/2011, 09:24

    com certeza criquio, é isso mesmo....ficam presos nakel maxima que diz.." o melhor é o que voce domina", mas nem sequer testam desbravar outras tecnologias...
    jamesacdc
    jamesacdc
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 146
    Registrado : 09/04/2012

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  jamesacdc em 10/2/2019, 16:12

    Olá pessoal,
    estou com o mesmo problema e precisava desses exemplos, mas os links estão quebrados.
    Se alguem tiver poderia me enviar.

    Conteúdo patrocinado

    [Resolvido]ordenar Numeros com letraS Empty Re: [Resolvido]ordenar Numeros com letraS

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 24/8/2019, 13:22