Функция GETSUBSTR() предназначена для отбора части текста по заданному разделителю.
Код функции GETSUBSTR разбивает текст на массив по заданному разделителю и возвращает элемент данного массива в соответствии с указанным порядковым номером.
Ниже приведен код макроса для создания пользовательской функции GETSUBSTR, которая может разбивать текст на части и получать любой его элемент в программе LibreOffice Calc.
Чтобы добавить новую функцию, откройте меню Tools - Macros - Edit Macros..., выберите Module1 и скопируйте следующий текст в модуль:
Function GETSUBSTR(Txt, Delimiter, n) As String
Dim txtArray As Variant
If Txt = "" Then Exit Function
txtArray = Split(Txt, Delimiter)
maxExt = UBound(txtArray)
If n >= 0 Then
normExt = n - 1
Else
normExt = maxExt + n + 1
EndIf
extToFind = Max(Min(maxExt, normExt), 0)
GETSUBSTR = txtArray(extToFind)
End Function
Затем закройте Macro Editor, вернитесь к LibreOffice Calc и используйте новую функцию в любой ячейке.
Вы также можете воспользоваться функцией GETSUBSTR() установив бесплатное расширение YouLibreCalc.oxt или его полнофункциональную версию YLC_Utilities.oxt .
После этого данная функция будет доступна во всех файлах, которые будут открыты в LibreOffice Calc.