i |
Afficher montants en lettres dans un rapport |
Utiliser une macro writer
- Insérer dans le rapport Base le contrôle qui contiendra le montant en
lettres
sans lui affecter de champ de données
- Générer le rapport (le contrôle sera vide)
- Enregistrer le rapport généré comme odt. Les contrôles devraient se
présenter dans des tableaux. Il suffit de repérer les cellules intéressantes
(celle où se trouve le montant numérique, celle où doit figurer le montant
en lettres), de faire le calcul et mettre à jour la cellule cible.
Dans l'exemple simplifié joint, les cellules sont dans les tableaux
"Pied_de_page_de_groupe". Le programme ne fait ici que recopier
la valeur mais il suffira d'ajouter ta conversion.
macro !
Sub Main
dim oTables as object, oTable as object
dim sNomTable as string
oTables = thiscomponent.TextTables
for each sNomTable in oTables.ElementNames
if left(sNomTable, 22) = "Pied_de_page_de_groupe" then
oTable = oTables.getByName(sNomTable)
oTable.getCellByName("B4").value = oTable.getCellByName("D3").value
end if
next sNomTable
End Sub