Aide LibreOffice 25.2
La bibliothèque SFDocuments fournit des méthodes et des propriétés pour faciliter la gestion et la manipulation des documents LibreOffice.
Les méthodes applicables à tous les types de documents (Documents Textes, Classeurs, Présentations, etc.) sont fournies par le service SFDocuments.Document. Certains exemples sont :
Ouvrir, fermer et enregistrer des documents
Accéder aux propriétés standard ou personnalisées des documents
Les propriétés, méthodes ou arguments marqués d'un (*) ne sont PAS applicables aux documents Base.
Les méthodes et propriétés spécifiques à certains composants LibreOffice sont stockées dans des services distincts, tels que SFDocuments.SF_Calc et SFDocuments.SF_Base.
Bien que le langage Basic ne propose pas d'héritage entre classes d'objets, ces derniers services peuvent être considérés comme des sous-classes du service SFDocuments.Document. Ces sous-classes peuvent invoquer les propriétés et les méthodes décrites ci-dessous.
Avant d'utiliser le service Document, la bibliothèque ScriptForge doit être chargée ou importée :
Vous trouverez ci-dessous trois variantes de la façon dont le service Document peut être appelé.
Utilisation de la méthode getDocument du service ScriptForge.UI :
    Dim ui As Object, oDoc As Object
    Set ui = CreateScriptService("UI")
    Set oDoc = ui.GetDocument("Untitled 1")
  Vous pouvez également utiliser les méthodes CreateDocument et OpenDocument du service UI.
    Set oDocA = ui.CreateDocument("Calc")
    Set oDocB = ui.OpenDocument("C:\Documents\MyFile.odt")
  Utiliser un nom de fenêtre si le document est déjà ouvert.
    Dim oDoc As Object
    Set oDoc = CreateScriptService("SFDocuments.Document", "Untitled 1") 'Default = ActiveWindow
  En utilisant le document référencé par ThisComponent. Ceci est particulièrement utile lors de l'exécution d'une macro à partir de l'IDE Basic.
    Dim oDoc As Object
    Set oDoc = CreateScriptService("Document", ThisComponent)
  À partir d'une macro déclenchée par un événement de document.
    Sub RunEvent(ByRef poEvent As Object)
        Dim oDoc As Object
        Set oDoc = CreateScriptService("SFDocuments.DocumentEvent", poEvent)
        ' (...)
    End Sub
  Le service Document est étroitement lié aux services UI et FileSystem.
Sauf lorsque le document a été fermé par programme avec la méthode CloseDocument (c'est alors superflu), il est recommandé de libérer des ressources après utilisation :
    Set oDoc = oDoc.Dispose()
  
    from scriptforge import CreateScriptService
    ui = CreateScriptService("UI")
    doc = ui.GetDocument("Untitled 1")
    # (...)
    doc.Dispose()
  
    docA = ui.CreateDocument("Calc")
    docB = ui.OpenDocument("C:\Documents\MyFile.odt")
  
    doc = CreateScriptService("SFDocuments.Document", "Untitled 1")
  
    bas = CreateScriptService("Basic")
    doc = CreateScriptService("Document", bas.ThisComponent)
  
    def RunEvent(event)
        doc = CreateScriptService("SFDocuments.DocumentEvent", Event)
        # (...)
  L'utilisation du préfixe "SFDocuments." lors de l'appel du service est facultative.
| Nom | En lecture seule | Type | Description | 
|---|---|---|---|
| CustomProperties (*) | Non | Dictionary service | Renvoie une instance d'objet ScriptForge.Dictionary. Après la mise à jour, peut être transmis à nouveau à la propriété pour mettre à jour le document. | 
| Description (*) | Non | String | Donne accès à la propriété Description du document (également appelée "Comments") | 
| DocumentProperties (*) | Oui | Dictionary service | Renvoie un objet ScriptForge.Dictionary contenant toutes les entrées. Les statistiques du document sont incluses. Notez qu'elles sont spécifiques au type de document. Par exemple, un document Calc inclut une entrée "CellCount". D'autres documents ne les ont pas. | 
| DocumentType | Oui | String | Valeur de chaîne avec le type de document ("Base", "Calc", "Writer", etc.) | 
| ExportFilters (*) | Oui | String array | Renvoie une liste avec les noms de filtres d'export applicables au document actuel sous la forme d'une matrice de chaînes de base zéro. Les filtres utilisés pour l'import/export sont également renvoyés. | 
| FileSystem | Oui | String | Renvoie une chaîne avec le chemin URL vers la racine du système de fichiers virtuel du document. Utilisez le service FileSystem pour afficher son contenu, ainsi que pour créer, ouvrir et lire les fichiers qui y sont stockés. Reportez-vous à cette page d'aide pour en savoir plus sur l'accès et la manipulation des dossiers et des fichiers dans le système de fichiers virtuel d'un fichier LibreOffice. | 
| ImportFilters (*) | Oui | String array | Renvoie une liste avec les noms de filtres d'import applicables au document actuel sous la forme d'une matrice de chaînes de base zéro. Les filtres utilisés pour l'import/export sont également renvoyés. | 
| 
            IsBase | Oui | Boolean | Exactement une de ces propriétés est True pour un document donné. | 
| Keywords (*) | Non | String | Donne accès à la propriété Keywords du document. Représenté sous la forme d'une liste de mots-clés séparés par des virgules | 
| Readonly (*) | Oui | Boolean | True si le document est réellement en mode lecture seule | 
| StyleFamilies (*) | Oui | String array | Liste des familles de styles disponibles. Applicable à tous les types de documents sauf Base. | 
| Subject (*) | Non | String | Donne accès à la propriété Subject du document. | 
| Title (*) | Non | String | Donne accès à la propriété Title du document. | 
| XComponent | Oui | Objets UNO | L'objet UNO com.sun.star.lang.XComponent ou com.sun.star.comp.dba.ODatabaseDocument représentant le document. | 
| XDocumentSettings (*) | Oui | Objet UNO | Un objet UNO com.sun.star.XXX.DocumentSettings, où XXX est soit sheet, text, drawing ou presentation. Cet objet donne accès aux propriétés UNO internes spécifiques au type de document. | 
L'exemple ci-dessous imprime toutes les propriétés d'un document. Notez que l'objet oDoc renvoyé par la méthode UI.OpenDocument est un objet SFDocuments.Document.
    Dim ui as Variant : Set ui = CreateScriptService("UI")
    Dim oDoc as Object
    Set oDoc = ui.OpenDocument("C:\Documents\MyFile.ods")
    Dim propDict as Object
    Set propDict = oDoc.DocumentProperties
    Dim keys as Variant : propKeys = propDict.Keys
    Dim k as String, strProp as String
    For Each k In propKeys
        strProp = strProp & k & ": " & propDict.Item(k) & CHR$(10)
    Next k
    MsgBox strProp
    oDoc.CloseDocument()
  Pour accéder aux propriétés du document dans un script Python, l'utilisateur doit y accéder directement en utilisant leurs noms, comme indiqué ci-dessous :
    doc = ui.GetDocument(r"C:\Documents\MyFile.ods")
    msg = doc.Title + '\n' + doc.Description + '\n' + doc.Keywords
    bas = CreateScriptService("Basic")
    bas.MsgBox(msg)
    doc.CloseDocument()
  | Liste des méthodes dans le service Document | ||
|---|---|---|
| 
             Activate | ||
Renvoie True si le document peut être activé. Sinon, il n'y a aucun changement dans l'interface utilisateur active. Elle est équivalente à la méthode Activate du service UI.
Cette méthode est utile lorsque l'on doit donner le focus à un document réduit ou masqué.
svc.Activate(): bool
L'exemple ci-dessous considère que le fichier "My_File.ods" est déjà ouvert mais pas actif.
    Dim oDoc As Object
    Set oDoc = CreateScriptService("Document", "MyFile.ods")
    oDoc.Activate()
  
    doc = CreateScriptService("Document", "MyFile.ods")
    doc.Activate()
  Gardez à l'esprit que vous pouvez invoquer le service Document en passant à CreateScriptService "Document" ou "SFDocuments.Document"
Ferme le document. Si le document est déjà fermé, quelle que soit la façon dont le document a été fermé, cette méthode n'a aucun effet et renvoie False.
La méthode renverra également False si l'utilisateur refuse de le fermer.
Renvoie True si le document a été fermé avec succès.
svc.CloseDocument(saveask: bool = True): bool
saveask : si True (par défaut), l'utilisateur est invité à confirmer si les modifications doivent être écrites sur le disque. Cet argument est ignoré si le document n'a pas été modifié.
    If oDoc.CloseDocument(True) Then
        ' ...
    End If
  
    if doc.CloseDocument(True):
        # ...
  Crée une nouvelle entrée de menu dans la barre de menus d'une fenêtre de document donnée.
Cette méthode renvoie une instance du service SFWidgets.Menu.
Le menu créé n'est disponible que pendant la session LibreOffice en cours et n'est enregistré ni dans le document ni dans les paramètres globaux de l'application. Par conséquent, la fermeture de la fenêtre du document fera disparaître le menu. Il ne réapparaîtra que lorsque la macro qui crée le menu sera à nouveau exécutée.
svc.CreateMenu(menuheader: str, [before: any], submenuchar: str = ">"): svc
menuheader : le nom de niveau supérieur du nouveau menu.
before : Le nom (sous forme de chaîne) ou la position (sous forme d'entier commençant à 1) d'un menu existant avant lequel le nouveau menu sera placé. Si aucune valeur n'est définie pour cet argument, le menu sera créé à la dernière position dans la barre de menus.
submenuchar : le délimiteur utilisé pour créer des arborescences de menus lors de l'appel de méthodes en tant que AddItem à partir du service Menu. La valeur par défaut est ">".
    Dim oDoc as Object, oMenu as Object
    Set oDoc = CreateScriptService("Document")
    Set oMenu = oDoc.CreateMenu("My Menu")
    With oMenu
        'Ajoute un élément au menu
        .AddItem("Item A")
        .AddItem("Item B")
        ' ...
        ' Après avoir créé le menu, l'instance de service peut être supprimée
        .Dispose()
    End With
  
    doc = CreateScriptService("Document")
    menu = doc.CreateMenu("My Menu")
    menu.AddItem("Item A")
    menu.AddItem("Item B")
    # ...
    menu.Dispose()
  Reportez-vous à la page d'aide SFWidgets.Menu pour en savoir plus sur la création/suppression de menus dans les fenêtres de documents LibreOffice.
Supprime un style unique ou une matrice de styles donnés par leurs noms au sein d'une famille de styles spécifique. Seuls les styles définis par l'utilisateur peuvent être supprimés, les styles intégrés sont ignorés. Il s'applique à tous les types de documents sauf Base et FormDocument.
svc.DeleteStyles(family: str, styleslist: str[1..*])
family : une des familles de styles présentes dans le document réel, sous forme de chaîne sensible à la casse. Les noms de famille valides peuvent être récupérés à l'aide de la propriété StyleFamilies.
styleslist : un nom de style unique sous forme de chaîne ou de matrice de noms de styles. Les noms de styles peuvent être traduits ou non. Le StylesList est généralement le résultat de l'exécution d'une méthode Styles().
    ' Suppression des styles de paragraphe inutilisés
    Const family = "ParagraphStyles"
    aList = oDoc.Styles(family, used := False, userDefined := True)
    oDoc.DeleteStyles(family, aList)
  
    # Supprimer les styles selon un préfixe
    a_list = doc.Styles('ParagraphStyles', namepattern = "Py*")
    doc.Styles('ParagraphStyles', a_list)
  Suspend les mises à jour de l’interface utilisateur (UI) pendant l’exécution d’une macro. En option, le pointeur de la souris peut être transformé en sablier pendant que les mises à jour de l'interface utilisateur sont suspendues.
Cette méthode peut offrir certains avantages en termes de performances pour les macros qui effectuent de nombreuses opérations nécessitant des mises à jour de l’interface utilisateur.
svc.Echo(echoon: bool = True, hourglass: bool = False)
echoon : spécifiez False pour suspendre les mises à jour de l'interface utilisateur. La valeur par défaut est True, ce qui permet les mises à jour de l'interface utilisateur en temps réel.
hourglass : spécifiez True pour changer le pointeur de la souris en sablier (par défaut = False).
Déplacer le pointeur de la souris après qu'il se soit transformé en sablier peut le faire basculer vers un pointeur différent en fonction de son nouvel arrière-plan.
    ' Suspend les mises à jour de l'interface utilisateur et change le pointeur de la souris en sablier
    oDoc.Echo(EchoOn := False, HourGlass := True)
    'Autres commandes de macros
    ' ...
    ' Restaure les mises à jour de l'interface utilisateur et le pointeur de la souris
    oDoc.Echo()
  
    doc.Echo(echoon = False, hourglass = True)
    ...
    doc.Echo()
  Exporte le document directement sous forme de fichier PDF à l'emplacement spécifié. Renvoie True si le fichier PDF a été créé avec succès.
Les options d'export peuvent être définies manuellement à l'aide de la boîte de dialogue ou en appelant les méthodes GetPDFExportOptions et SetPDFExportOptions à partir du Service Session.
svc.ExportAsPDF(filename: str, overwrite: bool = False, opt pages: str, opt password: str, opt watermark: str): bool
filename : chemin d'accès complet et nom de fichier du PDF à créer. Il doit suivre la notation SF_FileSystem.FileNaming.
overwrite : spécifie si le fichier de destination peut être écrasé (par défaut = False). Une erreur se produira si overwrite est défini sur False et que le fichier de destination existe déjà.
pages : chaîne spécifiant quelles pages seront exportées. Cet argument utilise la même notation que dans la boîte de dialogue .
password : spécifie un mot de passe pour ouvrir le fichier PDF.
watermark : texte à utiliser comme filigrane dans le fichier PDF, qui sera dessiné sur chaque page du PDF résultant.
L'exemple suivant exporte le document actuel sous forme de fichier PDF, définit un mot de passe et écrase le fichier de destination s'il existe déjà.
    oDoc.ExportAsPDF("C:\User\Documents\myFile.pdf", Password := "1234", Overwrite := True)
  L'extrait de code ci-dessous récupère les options d'export PDF actuelles et les utilise pour créer le fichier PDF.
    Dim exportSettings as Object, oSession as Object
    oSession = CreateScriptService("Session")
    exportSettings = oSession.GetPDFExportOptions()
    ' Définit sur True l'option d'export des commentaires sous forme de notes PDF
    exportSettings.ReplaceItem("ExportNotes", True)
    oSession.SetPDFExportOptions(exportSettings)
    oDoc.ExportAsPDF("C:\User\Documents\myFile.pdf")
  
    doc.ExportAsPDF(r"C:\User\Documents\myFile.pdf", password = "1234", overwrite = True)
  
    session = CreateScriptService("Session")
    exportSettings = oSession.GetPDFExportOptions()
    exportSettings.ReplaceItem("ExportNotes", True)
    session.SetPDFExportOptions(exportSettings)
    doc.ExportAsPDF(r"C:\User\Documents\myFile.pdf")
  Cette méthode envoie le contenu du document à l'imprimante par défaut ou à l'imprimante définie par la méthode SetPrinter.
Renvoie True si le document a été imprimé avec succès.
svc.PrintOut(pages: str = "", copies: num = 1): bool
pages : les pages à imprimer sous forme de chaîne, comme dans l'interface utilisateur. Exemple : "1-4;10;15-18". La valeur par défaut est toutes les pages.
copies : le nombre de copies. La valeur par défaut est 1.
    If oDoc.PrintOut("1-4;10;15-18", Copies := 2) Then
        ' ...
    End If
  
    if doc.PrintOut(copies=3, pages='45-88'):
        # ...
  Supprime un menu de niveau supérieur de la barre de menus d'une fenêtre de document donnée.
Renvoie True si le menu spécifié peut être supprimé. Si le menu spécifié n'existe pas, la méthode renvoie False.
Cette méthode peut être utilisée pour supprimer toute entrée de menu de la fenêtre du document, y compris les menus par défaut. Cependant, aucune de ces modifications dans la barre de menus n'est enregistrée dans le document ou dans les paramètres de l'application. Pour restaurer la barre de menus aux paramètres par défaut, fermez et rouvrez simplement la fenêtre du document.
svc.RemoveMenu(menuheader: str): bool
menuheader : le nom de niveau supérieur du menu à supprimer.
    Dim oDoc as Object
    Set oDoc = CreateScriptService("Document")
    oDoc.RemoveMenu("My Menu")
  
    doc = CreateScriptService("Document")
    doc.RemoveMenu("My Menu")
  Exécute une commande UNO sur la fenêtre de document associée à l'instance de service. Quelques commandes typiques sont : Save, SaveAs, ExportToPDF, Undo, Copy, Paste, etc.
Le document lui-même n'a pas besoin d'être actif pour pouvoir exécuter des commandes.
Les commandes peuvent être exécutées avec ou sans arguments. Les arguments ne sont pas validés avant l'exécution de la commande. Si la commande ou ses arguments ne sont pas valides, rien ne se passera.
Pour une liste complète des commandes UNO pouvant être exécutées dans LibreOffice, reportez-vous à la page Wiki Development/DispatchCommands.
svc.RunCommand(command: str, [args: any])
commande : chaîne sensible à la casse contenant le nom de la commande UNO. L'inclusion du préfixe ".uno :" dans la commande est facultative. L'exactitude de la commande elle-même n'est pas vérifiée. Si rien ne se passe après l'appel de la commande, la commande est probablement erronée.
args : pour chaque argument à transmettre à la commande, spécifiez une paire contenant le nom et la valeur de l'argument.
L'exemple suivant exécute la commande SelectData dans un fichier Calc nommé "MyFile.ods", ce qui entraînera la sélection de la zone de données en fonction de la cellule actuellement sélectionnée. Notez que cette commande ne nécessite aucun argument.
    Set oDoc = CreateScriptService("Document", "MyFile.ods")
    oDoc.RunCommand("SelectData")
  Vous trouverez ci-dessous un exemple qui exécute la commande UNO ReplaceAll et transmet des valeurs pour ses arguments SearchString et ReplaceString. L'exécution de cette commande remplacera toutes les occurrences de la chaîne "abc" par "ABC" dans la feuille actuelle.
    ' Arguments passés à la commande :
    ' SearchString  = "abc"
    ' ReplaceString = "ABC"
    oDoc.RunCommand(".uno:ReplaceAll", "SearchString", "abc", "ReplaceString", "ABC")
  Notez que l'appel de la commande ReplaceAll sans arguments ouvrira la boîte de dialogue .
    doc = CreateScriptService("Document", "MyFile.ods")
    doc.RunCommand("SelectData")
  
    doc.RunCommand(".uno:ReplaceAll", "SearchString", "abc", "ReplaceString", "ABC")
  En Python, il est également possible d'appeler RunCommand en utilisant des arguments de mots-clés :
    doc.RunCommand(".uno:ReplaceAll", SearchString = "abc", ReplaceString = "ABC")
  Chaque composant LibreOffice dispose de son propre jeu de commandes. Un moyen simple d'apprendre les commandes est d'aller dans Outils - Personnaliser - Clavier. Lorsque le curseur de la souris est positionné sur une fonction dans la liste Fonction, une info-bulle apparaît avec la commande UNO correspondante.
Stocke le document à l'emplacement du fichier à partir duquel il a été chargé. La méthode est ignorée si le document n'a pas été modifié.
Renvoie False si le document n'a pas pu être enregistré. Une erreur est générée si le fichier est ouvert en lecture seule ou s'il s'agit d'un nouveau fichier qui n'a pas encore été enregistré.
Le document lui-même n'a pas besoin d'être actif pour exécuter cette méthode.
svc.Save(): bool
    If Not oDoc.Save() Then
        ' ...
    End If
  
    if not doc.Save():
        # ...
  Stocke le document à l'emplacement de fichier donné. Le nouvel emplacement devient le nouveau nom de fichier sur lequel les appels simples à la méthode Save seront appliqués.
Renvoie False si le document n'a pas pu être enregistré. Une erreur est générée lorsque le remplacement de la destination est rejeté ou lorsque la destination a son attribut en lecture seule défini.
Le document lui-même n'a pas besoin d'être actif pour exécuter cette méthode.
svc.SaveAs(filename: str, overwrite: bool = False, password: str = '', filtername: str = '', filteroptions: str = ''): bool
filename : une chaîne contenant le nom du fichier à utiliser. Il doit suivre la notation SF_FileSystem.FileNaming.
overwrite : si True, le fichier de destination peut être écrasé (par défaut = False).
password (*) : Une chaîne sans espace pour protéger le document.
filtername (*) : Le nom d'un filtre qui doit être utilisé pour enregistrer le document. Si cet argument est passé, le filtre doit exister.
filteroptions (*) : une chaîne facultative d'options associées au filtre.
    oDoc.SaveAs("C:\Documents\NewCopy.odt", overwrite := True)
  
    doc.SaveAs(r"C:\Documents\NewCopy.odt", overwrite = True)
  Stocke une copie ou exporte le document vers l'emplacement de fichier donné. L'emplacement réel est inchangé.
Renvoie False si le document n'a pas pu être enregistré. Une erreur est générée lorsque le remplacement de la destination est rejeté ou lorsque la destination a son attribut en lecture seule défini.
Le document lui-même n'a pas besoin d'être actif pour exécuter cette méthode.
svc.SaveCopyAs(filename: str, overwrite: bool = False, password: str = '', filtername: str = '', filteroptions: str = ''): bool
filename : une chaîne contenant le nom du fichier à utiliser. Il doit suivre la notation SF_FileSystem.FileNaming.
overwrite : si True, le fichier de destination peut être écrasé (par défaut = False).
password (*) : Une chaîne sans espace pour protéger le document.
filtername (*) : le nom d'un filtre qui doit être utilisé pour enregistrer le document. Si cet argument est passé, le filtre doit exister.
filteroptions (*) : une chaîne facultative d'options associées au filtre.
    oDoc.SaveCopyAs("C:\Documents\Copy2.odt", Overwrite := True)
  
    doc.SaveCopyAs(r"C:\Documents\Copy2.odt", overwrite = True)
  Définit les options d'impression du document.
Renvoie True en cas de succès.
svc.SetPrinter(opt printer: str, opt orientation: str, paperformat: str): bool
printer : le nom de la file d'attente d'impression vers laquelle imprimer. En cas d'absence, l'imprimante par défaut est définie.
orientation : soit PORTRAIT ou PAYSAGE. Lorsque le paramètre est absent, reste inchangé par rapport aux paramètres de l'imprimante.
paperformat : spécifie le format du papier sous la forme d'une valeur de chaîne qui peut être soit A3, A4, A5, LETTER, LEGAL ou TABLOID. Reste inchangé en cas d'absence.
    oDoc.SetPrinter(Orientation := "PORTRAIT")
  
    doc.SetPrinter(paperformat='TABLOID')
  Récupère une liste de styles correspondant à un critère composé facultatif, le tableau renvoyé peut être vide. Il s'applique à tous les types de documents sauf Base.
svc.Styles(family, opt namepattern: str, opt used: bool, opt userdefined: bool, opt parentstyle: str, opt category: str): str[0..*])
category : une chaîne insensible à la casse : TEXT, CHAPTER, LIST, INDEX, EXTRA, HTML. Pour connaître leurs significations respectives, reportez-vous à la documentation de l'API catégorie de style de paragraphe.
Cet argument est ignoré lorsque la famille diffère de "ParagraphStyles".
namepattern : un filtre sur les noms de styles, sous la forme d'un modèle de chaîne sensible à la casse. Les noms incluent les noms internes et traduits.
Les caractères génériques admis sont :
le "?" représentant n’importe quel caractère unique.
le "*" représentant zéro, un ou plusieurs caractères
parentstyle : lorsqu'il est présent, seuls les enfants du nom de style parent donné, traduit ou non, sont conservés.
used : lorsque True, le style doit être utilisé dans le document, en cas d'absence, l'argument est ignoré.
userdefined : lorsque True, le style doit avoir été ajouté par l'utilisateur, soit dans le document, soit dans son modèle, en cas d'absence, l'argument est ignoré.
    Dim vStyles As Variant
    vStyles = oDoc.Styles("ParagraphStyles") 'tous les styles de la famille
    vStyles = oDoc.Styles("ParagraphStyles", "H*") 'Heading, Heading 1, ...
    vStyles = oDoc.Styles("ParagraphStyles", Used := False, UserDefined := True) ' Tous les styles définis par l'utilisateur qui ne sont pas utilisés
    vStyles = oDoc.Styles("ParagraphStyles", ParentStyle := "Standard") ' Tous les styles dérivés du 'Style de paragraphe par défaut'
  
    vStyles = doc.Styles('ParagraphStyles')  #Tous les styles de la famille
    vStyles = doc.Styles('ParagraphStyles', 'H*')  #Titre, Titre 1, ...
    vStyles = doc.Styles('ParagraphStyles', Used = False, UserDefined = True)  # Tous les styles définis par l'utilisateur qui ne sont pas utilisés
    vStyles = doc.Styles('ParagraphStyles', ParentStyle = 'Standard")  # Tous les styles dérivés du "Style de paragraphe par défaut"
  Cette méthode renvoie soit une liste des noms de barres d'outils disponibles dans le document actif, soit une instance du service SFWidgets.Toolbar.
    svc.Toolbars(opt ToolbarName: str): uno
    svc.Toolbars(): str[0..]
  
ToolbarName : le nom habituel de l'une des barres d'outils disponibles.
    Dim oToolbar As Object
    Set oToolbar = oDoc.Toolbars("myToolbar")
  
    a_list = doc.Toolbars()
  Cette méthode renvoie la représentation UNO d'un style donné pour tous les types de documents sauf Base. Nothing est renvoyé lorsque le StyleName n'existe pas dans la famille donnée.
svc.XStyles(family: str, stylename: str): uno
stylename : un des styles présents dans la famille donnée, sous forme de chaîne sensible à la casse. Le StyleName peut être traduit ou non.
    Dim oStyle As Object
    Set oStyle = oDoc.XStyle("ParagraphStyle", "Heading 2")
  
    oStyle = doc.XStyle('ParagraphStyle', 'Heading 2')