Перейти до основного вмісту

Функція транслітерації в Libre Office

Часом працюючи в LibreOffice не вистачає деяких функцій (та ж сама ситуація з Microsoft Office). Ну, не вкладають їх туди, бо розробникам та іншим це не потрібно. Але є частина людей, яким раптом та й знадобилася якась додаткова функція. От саме так наразі і в мене сталося - потрібна функція транслітарації з кирилиці на латиницю (може таки варто подумати про повний перехід на латиницю в офіційному українській письмі?). Але можливість писати власні функції та знання макромови дуже виручають в цій ситуації.

Користуючись принципом, що все що ми хочемо вже хотіли до нас, а значить намагалися це реалізувати, пошукав я в інтернеті готову функцію. Вдалося знайти кілька для Excel та одну для Calc. Всі для російського алфавіту. Не біда - кілька хвилин і маємо потрібну функцію. Кому ще буде потрібно - користуйтеся.




Для створення модуля з функцією потрібно зайти в Засоби->Макроси->Керування макросами->Libre Office Basic



Далі визначте, де буде зберігатися ваша функція.





 Якщо покласти в Мої макроси->Standard, то функція буде доступна в будь-якому документі, але тільки на цьому комп’ютері. Тож можете бути прикро враженими  відкривши ваш документ на іншій машині і не отримавши результату роботи функції.

Тож, якщо функція повинна бути прив’язана до документу, розміщуйте її в Документ->Standard.

Далі натискаєте кнопку Створити (або Редагувати, якщо це потрібно) і у вікно редактора макросів копіюйте вказаний нижче текст функції.

--------------------------------------------------------------------
Function Translate(Txt As String) As String

 Dim Ukr As Variant
 Ukr = Array("а", "б", "в", "г", "ґ", "д", "е", "є", "ж", "з", "и", "і", "ї", "й", "к", _
 "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", _
 "щ", "ю", "я", "ь", "А", "Б", "В", "Г", "Ґ", "Д", "Е", "Є", "Ж", "З", "І", "Ї", "Й", "К", _
 "Л", "М", "Н", "О", "П", "Р", "С", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", _
 "Щ", "Ю", "Я")

 Dim Eng As Variant
 Eng = Array("a", "b", "v", "h", "g", "d", "e", "ie", "zh", "z", "y", "i", "i", "i", "k", _
 "l", "m", "n", "o", "p", "r", "s", "t", "u", "f", "kh", "ts", "ch", "sh", _
 "sch", "iu", "ia", "", "A", "B", "V", "H", "G", "D", "E", "Ye", "Zh", "Z", "I", "Yi", "Y", "K", _
 "L", "M", "N", "O", "P", "R", "S", "T", "U", "F", "Kh", "Ts", "Ch", "Sh", _
 "Sch", "Yu", "Ya")


 For I = 1 To Len(Txt)
 C = Mid(Txt, I, 1)

 flag = 0
 For J = 0 To 63
 If Ukr(J) = C Then
 outchr = Eng(J)
 flag = 1
 Exit For
 End If
 Next J
 If flag Then outstr = outstr & outchr Else outstr = outstr & C
 Next I

 Translate = outstr

End Function
 ------------------------------------------------------------------

ПС. Для реалізації була вибрана офіційна паспортна транслітерація прийнята в 2010 році: http://www.slovnyk.ua/services/translit.php

Коментарі

Популярні дописи з цього блогу

Нюанси роботи в Google Docs

Багато хто створює документи в чудовій програмі Google Docs. Але крім стандартних функцій, які є в усіх текстових редакторах, в цю Google додає цікаві можливості. Я хочу зберегти та поділитися деякими цікавими можливостями

Як встановити VirtualBox Guest Additions на Ubuntu server (без графічного інтерфейсу користувача)

 VirtualBox Guest Additions забезпечують підвищення продуктивності та додаткові функції вашим хостам у віртуалізації. Щоб інсталювати цей пакунок на гостьовому сервері Ubuntu без графічного інтерфейсу, необхідно иконати такі кроки. Віртуальні машини (ВМ) стали основним продуктом центрів обробки даних… і не без підстав. За допомогою віртуальних машин ви можете розгорнути стільки серверів, скільки дозволяє обладнання хоста. Але навіть якщо у вас є досить потужне обладнання, ви точно захочете отримати якомога більше продуктивності від цих віртуальних машин, тому завжди повинні враховувати продуктивність під час створення нової віртуальної машини. Одним із способів отримати більшу продуктивність, а також такі зручні функції, як спільний доступ до каталогів між гостем і хостом, є встановлення гостьових доповнень VirtualBox. Для хоста, який містить графічний інтерфейс, це дуже просто. Необхідно запустити хост, натиснувши в меню хоста Пристрої -> Встановити гостьові доповнення, а по...