函数 SENTENCECASE() 旨在将现有文本转换为句子格式,并返回以下形式的一组单词:“Sentence case function”。
Sentence Case 将由句点、感叹号或问号分隔的行分成单独的句子。然后,将句子中除第一个字母之外的所有单词转换为小写,然后将所有元素合并为一个连续的文本。
SENTENCECASE() 函数可用于纠正整个文本中句子中字母的大小写。
以下是用于创建自定义函数的宏代码,该函数可以对 LibreOffice Calc 中的句子 (Sentence Case) 中的单词进行大小写调整。
打开菜单 Tools - Macros - Edit Macros...,选择 Module1 并将以下文本复制到模块中:
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
然后关闭 Macro Editor,返回到 LibreOffice Calc 并在任何单元格中使用我们的新函数。
您还可以通过设置扩展名“来使用 SENTENCASE() 函数” YouLibreCalc.oxt ”。此后,该功能将在所有在 LibreOffice Calc 中打开的文件中可用。