Para escrever um valor por extenso no Excel, você pode utilizar uma função personalizada chamada "Extenso". Siga estes passos:
Abra o Microsoft Excel;
Clique na célula onde você deseja escrever o valor por extenso;
Pressione as teclas "Alt" e "F11" ao mesmo tempo para abrir o editor de Visual Basic;
Clique na opção "Inserir" no menu superior e selecione "Módulo";
Digite o seguinte código na janela do módulo:
Function Extenso(ByVal Numeral As Double) As String
'Função que retorna o valor por extenso de um número entre 0 e 999,99.
Dim Unidades() As String, Dezenas() As String, Centenas() As String
Dim Raiz As Integer, Resto As Integer, Valor As Integer
Unidades = Split("um,dois,três,quatro,cinco,seis,sete,oito,nove", ",") Dezenas = Split("onze,doze,treze,quatorze,quinze,dezesseis,dezessete,dezoito,dezenove,vinte,trinta,quarenta,cinquenta,sessenta,setenta,oitenta,noventa", ",") Centenas = Split("cem,duzentos,trezentos,quatrocentos,quinhentos,seiscentos,setecentos,oitocentos,novecentos", ",") If Numeral = 0 ThenExtenso = "zero"Exit Function End If Raiz = Int(Numeral) Resto = Int((Numeral - Raiz) * 100 + 0.5) If Raiz > 999 ThenExtenso = "valor inválido"Exit Function End If Valor = Raiz \ 100 If Valor > 0 ThenIf Valor = 1 And Raiz Mod 100 <> 0 Then Extenso = Centenas(0) & " e "Else Extenso = Centenas(Valor - 1) & " "End If End If Valor = (Raiz Mod 100) \ 10 If Valor > 1 ThenExtenso = Extenso & Dezenas(Valor + 8) & " " ElseIf Valor = 1 And Raiz Mod 100 <> 0 ThenExtenso = Extenso & Dezenas(Raiz Mod 100 - 10) & " " End If Valor = Raiz Mod 10 If Valor > 0 ThenIf Raiz Mod 100 = 0 And Valor = 1 Then Extenso = Extenso & Unidades(0)ElseIf Valor = 1 And Raiz Mod 100 <> 0 Then Extenso = Extenso & "e " & Unidades(0)Else Extenso = Extenso & Unidades(Valor - 1)End If End If If Resto > 0 ThenIf Raiz < 1 Then Extenso = "centavos de real"ElseIf Resto = 1 Then Extenso = Extenso & " e um centavo de real"Else Extenso = Extenso & " e " & Format(Resto, "00") & "/100 de real"End If ElseExtenso = Extenso & " reais" End If
End Function
Feche o editor de Visual Basic;
Na célula onde você deseja escrever o valor por extenso, digite o seguinte comando:
=Extenso(NÚMERO)
Substitua "NÚMERO" pelo valor que você deseja escrever por extenso. Por exemplo, para escrever R$ 1.234,56 por extenso, digite:
=Extenso(1234,56)
O Excel irá exibir o valor por extenso correspondente ao número que você informou. Por exemplo, "um mil duzentos e trinta e quatro reais e cinquenta e seis centavos de real".