Menu
 
 
 
 
 
 


Valid XHTML 1.0 Transitional
Valid CSS!

Visual Basic for Application:

Converter um numero para extenso adaptado ao Euro - JJoão (03/2002)

Exemplo que converte um numero até 999.999.999,99 em extenso, parametrizável para outras moedas incluindo o Euro, claro. Pode ser adaptado para ser usado com o Word

Adaptação para o Word: Duas macros que em conjunto com o código do extenso para o Excel permite traduzir um numérico para extenso, todas as macros podem ser colocadas no normal.dot dentro de um modulo, associe uma tecla de atalho para as macros.
Para traduzir basta seleccionar o valor e executar uma das macros, o valor pode estar assim 1.200,00 ou assim 1200,00 que será a mesma coisa, terá que levar em conta que as macros tomam como separador decimal a virgula, eliminando todos os pontos encontrados.
Esta irá substituir no documento o valor seleccionado pelo seu extenso:

Sub TraduzParaExtenso_Substituir()
Dim num As Double
Dim anterior
    On Error GoTo Erro
    anterior = Selection.Text
    With Selection.Find
           .Text = "."
           .Replacement.Text = ""
           .Execute Replace:=wdReplaceAll, Forward:=True
    End With
    num = Format(Selection.Text, "#.00")
    If IsNumeric(num) = True Then Selection.Text = xExtenso(num) & " "
    Exit Sub
Erro:
    Selection.Text = anterior
    MsgBox Err.Description
End Sub

Esta macro adiciona o extenso ao documento logo a seguir ao valor p.ex: 1.200,00 (mil duzentos euro(s) )

Sub TraduzParaExtenso_Inserir()
Dim num As Double
Dim anterior
      On Error GoTo Erro
      anterior = Selection.Text
      With Selection.Find
             .Text = "."
             .Replacement.Text = ""
             .Execute Replace:=wdReplaceAll, Forward:=True
      End With
      num = Format(Selection.Text, "#.00")
      If IsNumeric(num) = True Then
                   Selection.Text = anterior
                   Selection.MoveRight Unit:=wdCharacter, Count:=2
                   Selection.TypeText Text:=" (" & xExtenso(num) & ") "
      End If
      Exit Sub
Erro:
      Selection.Text = anterior
      MsgBox Err.Description
End Sub 
Utilidades
 
Transito em directo
 
O Tempo
 
Gerador de Chaves
 
Moedas - Taxas e Cambios
 
 
 
 
 
Classifique o nosso website
@ MUNDOPT.COM
 
Topo