TOP

Sentence Case Función para LibreOffice Calc

SENTENCECASE() Descripción

La función SENTENCECASE() está diseñada para convertir texto existente en formato de oración y devuelve un conjunto de palabras en el formato: "Sentence case function".

Sentence Case divide las líneas separadas por puntos, signos de exclamación o signos de interrogación en oraciones separadas. Luego, convierte todas las palabras a minúsculas excepto la primera letra de la oración y luego fusiona todos los elementos en un texto continuo.

La función SENTENCECASE() puede resultar útil para corregir el caso de letras en oraciones a lo largo del texto.


BASIC Código para SENTENCASE()

Aquí está el código de macro para crear una función personalizada que puede justificar palabras en oraciones (Sentence Case) en LibreOffice Calc.

Abra el menú Tools - Macros - Edit Macros..., seleccione Module1 y copie el siguiente texto en el módulo:

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

Luego cierre Macro Editor, regrese a LibreOffice Calc y use nuestra nueva función en cualquier celda.