Extenso no Excel 2003 e posterior
Publicado em 19 de junho de 2010 por Robert Martim
Option Explicit
Dim ExtensoInstalado As Boolean
Private Sub Workbook_AddinInstall()
ExtensoInstalado = True
End Sub
Private Sub Workbook_Open()
Dim naLista As Boolean
Dim nAddIn As AddIn
Dim nomeArq As String
For Each nAddIn In AddIns
If nAddIn.Name = ThisWorkbook.Name Then
naLista = True
End If
Next
If Not ThisWorkbook.IsAddin Then Exit Sub
Application.Workbooks.Add
If Not ExtensoInstalado Then
If Not naLista Then
AddIns.Add (ThisWorkbook.FullName)
MsgBox "O suplemento 'Extenso' foi instalado com sucesso...", vbInformation, "Suplemento instalado..."
End If
For Each nAddIn In AddIns
If nAddIn.Name = ThisWorkbook.Name Then
nomeArq = nAddIn.Title
End If
Next
Application.EnableEvents = False
AddIns(nomeArq).Installed = True
Application.EnableEvents = True
End If
End Sub
Como todo o processo é bastante longo, o restante do código pode ser baixado neste link para análise: http://www.wordpower.com.br/excel/extensoRobert.zip Esta função personalizada escreverá números por extenso até a casa dos trilhões de reais.