Функція KEBABCASE() призначена для об'єднання слів через дефіс, тобто в результаті повертається одне слово, наприклад
Kebab Case розбиває рядок слів, розділених пробілами, дефісом, нижнім підкресленням або зміною регістру букв, потім перетворює ці слова в нижній регістр та об’єднує їх за допомогою тире-роздільника ("-").
Функція KEBABCASE() може бути корисною в програмуванні для конвертації імен змінних відповідно до прийнятих правил написання коду
Ось код макросу для створення користувацької функції, яка може перетворювати текст на окремі слова розділені дефісом (Kebab Case) в програмі LibreOffice Calc.
Відкрийте меню Tools - Macros - Edit Macros..., виберіть Module1 і скопіюйте наведений нижче текст до модуля:
Function KebabCase(ByVal str As String) As String 'moonexcel.com.ua Dim words As Variant Dim FCalc As Object FCalc = CreateUnoService("com.sun.star.sheet.FunctionAccess") str = Replace(str,"-"," ") str = Replace(str,"_"," ") str = FCalc.callFunction("TRIM", Array(str)) str = FCalc.callFunction("REGEX", Array(str,"([:lower:])([:upper:])","$1 $2","g")) str = LCase(str) words = Split(str," ") KebabCase = Join(words,"-") End Function
Потім закрийте Macro Editor, поверніться до LibreOffice Calc і використовуйте нашу нову функцію в будь-якій клітинці.
Ви також можете скористатись функцією KEBABCASE() встановивши безкоштовне розширення YouLibreCalc.oxt або його повнофункціональну версію YLC_Utilities.oxt.
Після цього, дана функція буде доступна у всіх файлах, які будуть відкриті в LibreOffice Calc.