TOP

Title Case Fonction pour LibreOffice Calc

TITLECASE() descriptif

La fonction TITLECASE() est conçue pour convertir un texte existant en titre case et renvoie un ensemble de mots sous la forme : "Function for Title Case".

Le code de la fonction Title Case remplace les séparateurs tels que les traits d'union et les traits de soulignement par des espaces, convertit tous les mots en majuscules et convertit les conjonctions en minuscules.

Title Case peut être utile pour la correction de casse dans les titres d'actualités, les titres d'articles de sites ou les titres de vidéos YouTube.

TITLECASE() est similaire à la fonction standard PROPER(), sauf que les conjonctions ne sont pas en majuscules.


BASIC Code pour TITLECASE()

Voici le code de la macro pour créer une fonction personnalisée pouvant afficher du texte sous forme de titres (Title Case) dans LibreOffice Calc.

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

Function TitleCase(ByVal str As String) As String
  'moonexcel.com.ua
  Dim words As Variant
  Dim FCalc As Object
    
  FCalc = CreateUnoService("com.sun.star.sheet.FunctionAccess")  
    
  oddWordsLat = "A|An|And|As|At|But|By|En|For|If|In|Is|Of|On|Or|The|To|Vs|Via"
  oddWordsCyr = "І|Як|На|Але|Для|Якщо|В|Чи|До|Через|Та|Від|Під|Над|И|Как|Но|То|Или|От|Под|К"  
  words = Split(oddWordsLat + "|" + oddWordsCyr,"|") 
  
  str = FCalc.callFunction("PROPER", Array(str))  
  
  For i = LBound(words) To UBound(words)  
    pattern = "(?!^)\b" + words(i) + "\b"
    replacement = LCase(words(i))
    
    str = FCalc.callFunction("REGEX", Array(str,pattern,replacement,"g"))
  Next i
    
  TitleCase = str
End Function

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

Utiliser l'extension YouLibreCalc

Vous pouvez également utiliser la fonction TITLECASE() en définissant l'extension " YouLibreCalc.oxt ". Après cela, cette fonction sera disponible dans tous les fichiers qui seront ouverts dans LibreOffice Calc.