TOP

Title Case Função para LibreOffice Calc

TITLECASE() Descrição

A função TITLECASE() foi projetada para converter texto existente em formato de título e retorna um conjunto de palavras no formato: "Function for Title Case" .

O código de função Title Case substitui separadores como hífens e sublinhados por espaços, converte todas as palavras em maiúsculas e converte conjunções em minúsculas.

Title Case pode ser útil para correção de maiúsculas e minúsculas em manchetes de notícias, títulos de artigos de sites ou títulos de vídeos do YouTube.

TITLECASE() é semelhante à função PROPER() padrão, exceto que as conjunções não são maiúsculas.


StarBASIC Código para TITLECASE()

Aqui está o código de macro para criar uma função personalizada que pode exibir texto como títulos (Title Case) em LibreOffice Calc.

Abra o menu Tools - Macros - Edit Macros..., selecione Module1 e copie o seguinte texto no módulo:

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

Em seguida, feche Macro Editor, retorne para LibreOffice Calc e use nossa nova função em qualquer célula.

Usando a extensão

Você também pode usar o recurso TITLECASE() instalando a extensão gratuita YouLibreCalc.oxt ou sua versão completa YLC_Utilities.oxt .

Depois disso, esta função estará disponível em todos os arquivos que serão abertos em LibreOffice Calc.