TOP

Sentence Case Fonction pour LibreOffice Calc

YLC Utilities logo

SENTENCECASE() descriptif

La fonction SENTENCECASE() est conçue pour convertir le texte existant au format phrase et renvoie un ensemble de mots sous la forme : "Sentence case function" .

Sentence Case divise les lignes séparées par des points, des points d'exclamation ou des points d'interrogation en phrases distinctes. Ensuite, convertit tous les mots en minuscules, à l'exception de la première lettre de la phrase, puis combine tous les éléments en un seul texte continu.

La fonction SENTENCECASE() peut être utile pour corriger la casse des lettres dans les phrases du texte.


StarBASIC Code pour SENTENCECASE()

Voici le code de la macro pour créer une fonction personnalisée capable de justifier la casse des mots dans les phrases (Sentence Case) dans LibreOffice Calc.

Ouvrez le menu Tools - Macros - Edit Macros..., sélectionnez Module1 et copiez le texte suivant dans le module :

Function SentenceCase(ByVal str As String) As String
  'moonexcel.com.ua
  Dim sentences As Variant
  Dim i         As Integer
  Dim FCalc     As Object
    
  FCalc = CreateUnoService("com.sun.star.sheet.FunctionAccess")    
  
  str = Replace(str,"-"," ")
  str = Replace(str,"_"," ")
  str = FCalc.callFunction("TRIM", Array(str))
  str = LCase(str)
  str = FCalc.callFunction("REGEX", Array(str,"([.!?])(\s)(\w)","$1#$3","g"))
  
  sentences = Split(str, "#")
    
  For i = LBound(sentences) To UBound(sentences)       
    sentences(i) = UCase(Left(sentences(i), 1)) & Mid(sentences(i), 2)       
  Next i
    
  SentenceCase = Join(sentences," ")
End Function

Fermez ensuite Macro Editor, revenez à LibreOffice Calc et utilisez notre nouvelle fonction dans n'importe quelle cellule.

Utiliser l'extension

Vous pouvez également utiliser la fonctionnalité SENTENCECASE() en installant l'extension gratuite YouLibreCalc.oxt ou sa version complète YLC_Utilities.oxt .

Après cela, cette fonction sera disponible dans tous les fichiers qui seront ouverts dans LibreOffice Calc.