StarOffice Basic (aussi connu sous le nom de StarBasic ou OOoBasic) est un dialecte du langage de programmation Basic qui est inclus dans les suites bureautiques OpenOffice.org, LibreOffice et StarOffice. Il supporte l'Unicode.
Exemple
Bien que StarBasic lui-même soit similaire à d'autres dialectes du Basic, tels que le Visual Basic for Applications (VBA) de Microsoft, l'API est très différente, comme l'exemple ci-après le montre.
Sub DécompteParagraphes
'
' Compte le nombre de paragraphes dans le document texte
'
Dim Doc As Object, Enum As Object, Décompte As Long
Doc = ThisComponent
' Est-ce que cet objet est un document texte ?
If Not Doc.SupportsService("com.sun.star.text.TextDocument") Then
MsgBox "Cette macro ne doit être lancée que depuis un document texte", 64, "Error"
Exit Sub
End If
Décompte=0
' Examine chaque composant - paragraphe ou table ?
Enum=Doc.Text.CreateEnumeration
While Enum.HasMoreElements
TextEl=Enum.NextElement
' Est-ce que le composant est un paragraphe ?
If TextEl.SupportsService("com.sun.star.text.Paragraph") Then
Décompte=Décompte+1
End If
Wend
'Affiche le résultat
MsgBox Décompte, 0, "Décompte des paragraphes"
End Sub
L'exemple suivant montre qu'il est possible d'utiliser des caractères Unicode, pour les noms de variables. Toutefois la coloration syntaxique présente alors des défauts.
Sub d'''é'''monstration
dim r'''é'''sultat as string
r'''é'''sultat = "essai"
msgbox résultat
End Sub
Bibliographie
Liens externes
Sur les autres projets Wikimedia :
BASIC Macros
LibreOffice / OpenOffice / StarOffice API