Exibição dos números como palavras em Excel
Se você já se necessária para exibir um número escrito como texto, você provavelmente descobriu que o Excel não oferece essa função. Quando o Excel não entregar, muitas vezes é possível corrigir a deficiência usando VBA. Aqui está uma função VBA, chamado SPELLDOLLARS
, que você pode usar em fórmulas de planilha.exemplos do Excel
Aqui estão alguns exemplos de SPELLDOLLARS.
O código VBA
Para usar esse código, pressione Alt + F11 para ativar o Editor do Visual Basic. Em seguida, escolha Inserir - Módulo para inserir um novo módulo VBA. Copie o código e cole-o para o novo módulo.
SPELLDOLLARS função (celulares) As Variant 'Retorna um valor, soletrada para fora em dólares wordsDim As String, Cents Como StringDim TextLen As Long, Pos Como LongDim Temp Como StringDim iHundreds As Long, Itens As Long, IONES quanto os LongDim como Variant, adolescentes, Variant, Dezenas Como VariantDim Units (2 a 5) Como StringDim Bhit As Boolean, NegFlag As Boolean 'é um não-número ou célula vazia? Se não IsNumeric (celular) ou célula = # 147- # 147- ThenSPELLDOLLARS = CVErr (xlErrValue) Exit FunctionEnd Se "É negativo? Se a célula lt; 0 ThenNegFlag = Truecell = Abs (celular) End IfDollars = Format (celular, # 147 - ### 0.00 # 148-) TextLen = Len (Dólares) - 3 '? É muito grande Se TextLen> 15 ThenSPELLDOLLARS = CVErr (xlErrNum) Exit FunctionEnd Se' fazer o centavos partCents = Direita (Dólares, 2) # 147- / 100 dólares # 148-Se a célula lt; 1 ThenSPELLDOLLARS = CentsExit FunctionEnd IfDollars = left (Dólares, TextLen) Ones = array (# 147- # 147-, # 147-One # 148-, # 147-Two # 148-, # 147-Three # 148-, # 147-Four # 148-, _ # 147-Five # 148-, # 147-Six # 148-, # 147-Seven # 148-, # 147-Eight # 148-, # 147-Nine # 148-) Adolescentes = Array (# 147-Ten # 148-, # 147-Eleven # 148-, # 147-Twelve # 148-, # 147-Thirteen # 148-, # 147 Quatorze # 148-, _ # 147 Fifteen # 148-, # 147 Sixteen # 148-, # 147 Seventeen # 148-, # 147 Dezoito # 148-, # 147 Dezenove # 148-) Dezenas = Array (# 147- # 147-, # 147- # 147-, # 147-Twenty # 148-, # 147 Trinta # 148-, # 147-Forty # 148-, # 147-Fifty # 148-, _ # 147 Sessenta # 148-, # 147 Setenta # 148-, # 147-Eighty # 148-, # 147 Noventa # 148-) Units (2) = # 147 Mil # 148 Unidades (3) = # 147-Million # 148 Unidades (4) = Número 147 bilhões nº 148-Units (5) = # 147 Trillion nº 148-Temp = # 147- # 147-For Pos = 15 Para 3 Passo -3If TextLen> = Pos - 2 ThenbHit = FalseIf TextLen> = Pos TheniHundreds = Asc (Mid $ (dólares, TextLen - Pos + 1, 1)) - 48If iHundreds> 0 ThenTemp = Temp # 147- # 147- Ones (iHundreds) # 147- Cem # 148-Bhit = TrueEnd IfEnd IfiTens = 0iOnes = 0If TextLen> = POS - 1 TheniTens = Asc (Mid $ (dólares, TextLen - Pos + 2, 1)) - 48End IFIF TextLen> = Pos - 2 TheniOnes = Asc (Mid $ (dólares, TextLen - Pos + 3, 1)) - 48End IFIF Itens = 1 ThenTemp = Temp # 147- # 147- Adolescentes (IONES) Bhit = TrueElseIf Itens> = 2 ThenTemp = Temp # 147- # 147- Dezenas (Itens) Bhit = TrueEnd IFIF IONES> 0 ThenIf Itens> = 2 ThenTemp = Temp # 147 - # 148-ElseTemp = Temp # 147- # 147-End IfTemp = Temp Ones (IONES) Bhit = TrueEnd IfEnd IFIF Bhit E Pos> 3 ThenTemp = Temp # 147- # 147- Units (Pos 3) End IfEnd IfNext PosSPELLDOLLARS = Trim (Temp) # 147- e # 147- CentsIf NegFlag Então SPELLDOLLARS = # 147 - (# 147- SPELLDOLLARS # 147 -) # Função 148-End