TOP

Title Case Funkcja dla LibreOffice Calc

TITLECASE() Opis

Funkcja TITLECASE() służy do konwersji istniejącego tekstu do formatu nagłówka i zwraca zestaw słów w postaci: "Function for Title Case" .

Kod funkcji Title Case zastępuje separatory, takie jak łączniki i podkreślenia, spacjami, konwertuje wszystkie słowa na wielkie litery i konwertuje spójniki na małe litery.

Title Case może być przydatny do poprawiania wielkości liter w nagłówkach wiadomości, tytułach artykułów w witrynie lub tytułach filmów w YouTube.

Funkcja TITLECASE() jest podobna do standardowej funkcji PROPER(), z tą różnicą, że spójniki nie są pisane wielką literą.


StarBASIC Kod dla TITLECASE()

Oto kod makra umożliwiający utworzenie niestandardowej funkcji, która może wyświetlać tekst jako tytuły (Title Case) w LibreOffice Calc.

Otwórz menu Tools - Macros - Edit Macros..., wybierz Module1 i skopiuj następujący tekst do modułu:

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

Następnie zamknij Macro Editor, wróć do LibreOffice Calc i użyj naszej nowej funkcji w dowolnej komórce.

Korzystanie z rozszerzenia

Możesz także skorzystać z tej funkcji TITLECASE() instalując darmowe rozszerzenie YouLibreCalc.oxt lub jego w pełni funkcjonalna wersja YLC_Utilities.oxt .

Od tego momentu ta funkcja będzie dostępna we wszystkich plikach, które zostaną otwarte w LibreOffice Calc.