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]Casas decimais via VBA

    lukdogdog
    lukdogdog
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 21/06/2012

    [Resolvido]Casas decimais via VBA Empty [Resolvido]Casas decimais via VBA

    Mensagem  lukdogdog 11/10/2013, 23:05

    Olá pessoal do Forum, saudações.
    Tenho uma dúvida quanto a sua programação, e se é possível desenvolver, pois pesquisei na internet e não encontrei algo do tipo.

    É possível alterar a quantidade de casas decimais para exibição no formulário via código VBA?
    Eu achei exemplos desse jeito dando opções de arredondar ou truncar, mas agora a dúvida é, teria como eu definir se quero trabalhar com duas ou três casas decimais

    Ex:1° crio um módulo global com as definições, que não tenho ideia de como fazer. rsrsrs
       2° crio um formulário dando opções de casas decimais com Checkbox
           Trabalhar com duas Casas decimais? -> e nos campos dos forms será exibido = 0,00
           Trabalhar com três casa decimais? -> e nos campos dos forms será exibido = 0,000
    Assim eu não preciso ficar mudando nos forms campo por campo toda vez quando um cliente preferir trabalhar com duas ou com três casas decimais..
    avatar
    Convidado
    Convidado


    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  Convidado 12/10/2013, 23:41

    Boa Noite !

    Vai preencher um controle ? Caixa de texto ou algo de tipo ?

    Tente usar o Round

    Round(SeuCampo,2) ' Para 2 casas decimais 0,00
    Round(SeuCampo,3) ' Para 3 casas decimais 0,000

    lukdogdog
    lukdogdog
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 21/06/2012

    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  lukdogdog 21/10/2013, 21:07

    Então RSilva, o Round vai me arredondar as casas decimais e eu teria que defini-las nos campos a quantidade de casas decimais, a minha ideia era escolher exibir o numero de casas decimais via código VBA..
    Por padrão ele exibiria duas casas decimais nos campos, "0,00" e ao selecionar o checkbox exibiria três casas decimais no campo "0,000".
    Alguém teria alguma ideia de como fazer essa proeza em VBA?
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11017
    Registrado : 04/11/2009

    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  JPaulo 21/10/2013, 21:34

    Você pode usar duas opções,

    Me!SeuCampo.DecimalPlaces =3

    Ou

    Me!SeuCampo.Format = "##,##0.000"



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Casas decimais via VBA Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Casas decimais via VBA Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Casas decimais via VBA Folder_announce_new Instruções SQL como utilizar...

    napoli gosta desta mensagem

    lukdogdog
    lukdogdog
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 21/06/2012

    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  lukdogdog 22/10/2013, 20:23

    Isso JPaulo, funcionou, porem fazendo os testes deparei com um probleminha
    quando eu coloco os campos pra exibir duas casas decimais por exemplo:
    o preço do produto é:
    Custo: 2,20
    Lucro: 58 %
    Venda: com 3 casas decimais 3,476, com 2 casas decimais 3,48
    se for vender 100 unidades com 2 casas decimais ficaria assim, 347,60 daí estaria errado deveria ser 348,00
    estou agora quebrando a cabeça pra achar uma forma de resolver e arredondar
    usei um exemplo seu mesmo olhando outro tópico com a função trunccc
    e com 2 casas decimais o valor de venda fica 3,47 e não 3,48.
    Se eu usar Int será que resolve? vou fazer esse teste!

    Mais uma dúvida.. será que seria possível fazer essa função num módulo global, pra não ter que escrever código por código em cada formulário? ou é isso mesmo?
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11017
    Registrado : 04/11/2009

    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  JPaulo 22/10/2013, 20:41

    Com duas casas decimais, arredonda para cima sempre que passar o 0,5

    Veja se ajuda,

    http://allenbrowne.com/round.html


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Casas decimais via VBA Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Casas decimais via VBA Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Casas decimais via VBA Folder_announce_new Instruções SQL como utilizar...
    lukdogdog
    lukdogdog
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 21/06/2012

    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  lukdogdog 23/10/2013, 14:29

    Vou analisar o artigo e depois retorno..
    Obrigado pela ajuda JPaulo.
    lukdogdog
    lukdogdog
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 21/06/2012

    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  lukdogdog 21/11/2013, 12:47

    Certinho JPaulo, obrigado pela ajuda..
    resolvi meu problema com as casas decimais agora o usuario que estiver utilizando o sistema pode escolher se quer duas ou tres casas decimais..
    Obrigado pela força.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11017
    Registrado : 04/11/2009

    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  JPaulo 21/11/2013, 13:15

    Obrigado pelo retorno o forum agradece.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Casas decimais via VBA Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Casas decimais via VBA Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Casas decimais via VBA Folder_announce_new Instruções SQL como utilizar...
    lukdogdog
    lukdogdog
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 21/06/2012

    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  lukdogdog 4/12/2013, 23:25

    Olá JPaulo. retornando a respeito dessa dúvida, fiz o seguinte metodo

    criei uma tabela casasdecimais
    dois campos nela no formato SIM/NAO
    CD2, CD3
    criei um módulo global com o seguinte código

    Function Decimais(x)
    if dlookup("CD2","casasdecimais","") = -1 then
    decimais = format(Round(x ,2), "#,##0.00")
    end if
    if dlookup("CD3","casasdecimais","") = -1 then
    decimais = format(Round(x ,3), "#,###0.000")
    end if
    end function
    ele arredonda e exibe a quantidade de casas decimais certinho sem esconder numeros e somatório com diferenças.

    basta colocar numa consulta: Decimais(meucampo)

    Obrigado pela ajuda.

    sds
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11017
    Registrado : 04/11/2009

    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  JPaulo 5/12/2013, 12:05

    Obrigado pelo retorno o forum agradece.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Casas decimais via VBA Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Casas decimais via VBA Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Casas decimais via VBA Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Casas decimais via VBA Empty Re: [Resolvido]Casas decimais via VBA

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 2/6/2024, 18:49