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]Fazer o access falar centavos

    avatar
    Rosalvo Risso
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 89
    Registrado : 21/05/2015

    [Resolvido]Fazer o access falar centavos Empty [Resolvido]Fazer o access falar centavos

    Mensagem  Rosalvo Risso 26/4/2018, 21:31

    Oi gente tô eu aqui novamente com dúvidas sobre o mesmo assunto que postei meses atrás. Preciso que o access fale o valor total de uma compra.
    O código do Mestre João Paulo que usei me diz somente o valor arrendondado e se tiver centavos ele diz assim, ex: R$ 35,20 - "trinta e cinco vírgula vinte reais". Abaixo o código usado. Muito obrigado a todos.

    FazerFalar ((Me.TextoTotal) & " " & "Reais")

    Resolvido:

    Primeiro: CRIAR O MÓDULO

    Option Compare Database

    Meste João Paulo
    Option Explicit
    Public Function FazerFalar(str As String)
    Dim objVo As Object
    Set objVo = CreateObject("SAPI.SpVoice")
    objVo.Speak str
    End Function

    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    CassioFabre -

    Depois colocar no evento ao clicar de um botão o seguitente código:

    Private Sub Botão_Click()

    Dim s
    Dim str As String
    Dim numero As String

    "Onde 'TextoTotal' é o campo que será lido e deve ter o formato determinado como PADRÃO e não como moeda."

    TextoTotal.SetFocus
    numero = TextoTotal.Text

    s = Split(numero, ",")

    'aqui eu monto a string apenas nos reais
    If s(0) = 1 Then
    str = s(0) & " real"
    ElseIf s(0) > 1 Then
    str = s(0) & " reais"
    End If


    If s(1) <> "00" Then
    If str <> vbNullString Then str = str & " e "

    'agora vou montar os centavos
    If Len(s(1)) = 1 Then
    str = str & s(1) & 0 & " centavos"
    ElseIf s(1) = 1 Then
    str = str & Right(s(1), 1) & " centavo"
    ElseIf s(1) < 10 Then
    str = str & Right(s(1), 1) & " centavos"
    ElseIf s(1) > 9 Then
    str = str & s(1) & " centavos"
    End If
    End If

    'agora é só fazer falar
    FazerFalar (str)

    End Sub


    Última edição por Rosalvo Risso em 14/5/2018, 04:18, editado 1 vez(es)
    CassioFabre
    CassioFabre
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 731
    Registrado : 18/01/2013

    [Resolvido]Fazer o access falar centavos Empty Re: [Resolvido]Fazer o access falar centavos

    Mensagem  CassioFabre 27/4/2018, 13:12

    Bom dia,

    É simples, separe os centavos dos reais. Você pode fazer isso usando a função Split(), utilizando a vírgula como separador. Ficaria algo assim:
    Código:
    Dim s

    s = Split(Me.TextoTotal, ",")

    FazerFalar(s(0) & " " & "Reais" & " e " & s(1) & "Centavos")

    Onde s(0) se refere ao trecho antes da vírgula (os reais) e s(1) se refere ao trecho posterior. Aí você faria as verificações caso nao houvessem centavos, etc etc...

    Abraço.


    .................................................................................
    Só não tem código pra morte!
    avatar
    Rosalvo Risso
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 89
    Registrado : 21/05/2015

    [Resolvido]Fazer o access falar centavos Empty Fazer o access falar centavos

    Mensagem  Rosalvo Risso 27/4/2018, 13:31

    funcionou perfeitamente Cassio!
    Muito obrigado! Grande abraço!
    avatar
    Rosalvo Risso
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 89
    Registrado : 21/05/2015

    [Resolvido]Fazer o access falar centavos Empty Fazer o access falar centavos

    Mensagem  Rosalvo Risso 27/4/2018, 13:33

    obrigado a todos!

    Conteúdo patrocinado


    [Resolvido]Fazer o access falar centavos Empty Re: [Resolvido]Fazer o access falar centavos

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/3/2024, 15:55