Pour faire écho à ce sujet ouvert en section traitement de texte : Placer un repère de retrait de texte sous forme de caractère
Ci-joint une proposition qui ne répond pas stricto sensu à l'attente de l’intéressé mais qui permet à partir d'un raccourci clavier (Shift+Espace) d'obtenir un retrait du texte à l'endroit où est positionné le curseur sur la première ligne d'un paragraphe :
Code : Tout sélectionner
Option Explicit
Sub Main
Dim oDoc As Object, oViewCursor As Object
Dim posCursor As long, posStartOfLine As Long, tabValue As Long
oDoc = ThisComponent
oViewCursor = oDoc.CurrentController.ViewCursor
posCursor = oViewCursor.Position.X
oViewCursor.gotoStartOfLine(False)
posStartOfLine = oViewCursor.Position.X
tabValue = posCursor-posStartOfLine
oViewCursor.ParaLeftMargin = tabValue
oViewCursor.ParaFirstLineIndent = -tabValue
End Sub