文字変換 
大文字を小文字に、ひらがなをカタカナに、またはその逆に変換できるサービス。変換の仕方は言語に依存。日本語だと平仮名と片仮名変換がメインでしょうか。
Transliteration 
文字の変換には com.sun.star.i18n.Transliteration サービスを利用します。
oTransliteration = CreateUnoService("com.sun.star.i18n.Transliteration")
サービスをインスタンス化するだけでは変換はできません。変換に利用するモジュールと言語の設定が必要です。変換内容によって読み込むモジュールを変更する必要があるので各変換項目を参照。
平仮名 - カタカナ変換 
平仮名をカタカナに、カタカナを平仮名にするときには com.sun.star.i18n.TransliterationModuleNew の HIRAGANA_KATAKANA もしくは KATAKANA_HIRAGANA を読み込みます。ロケール設定は日本語にします。
Sub transliteration_1
oLocale = CreateUnoStruct("com.sun.star.lang.Locale")
oLocale.Language = "ja"
oLocale.Country = "JP"
oTransliteration = CreateUnoService("com.sun.star.i18n.Transliteration")
oTransliteration.loadModuleNew(_
Array(com.sun.star.i18n.TransliterationModulesNew.HIRAGANA_KATAKANA),oLocale)
Dim nOffset() As Long
sHira = "ひらがな"
sKata = oTransliteration.transliterate(sHira,0,Len(sHira),nOffset)
msgbox sKata
oTransliteration.loadModuleNew(_
Array(com.sun.star.i18n.TransliterationModulesNew.KATAKANA_HIRAGANA),oLocale)
sKata = "カナ"
sHira = oTransliteration.transliterate(sKata,0,Len(sHira),nOffset)
msgbox sHira
End Sub
loadModuleNew メソッドでモジュールを読み込みます。変換には transliterate を利用します。変換する文字列、変換開始位置、変換回数、位置 ([out]) を指定、返り値が変換後文字列になります。
大文字 - 小文字変換 
アルファベットの大文字と小文字を変換。モジュールに UPPERCASE_LOWERCASE もしくは LOWERCASE_UPPERCASE を利用します。
Sub transliteration_2
oLocale = CreateUnoStruct("com.sun.star.lang.Locale")
oLocale.Language = "ja"
oLocale.Country = "JP"
oTransliteration = CreateUnoService("com.sun.star.i18n.Transliteration")
oTransliteration.loadModuleNew(_
Array(com.sun.star.i18n.TransliterationModulesNew.UPPERCASE_LOWERCASE),oLocale)
Dim nOffset() As Long
sHira = "Hira"
sKata = oTransliteration.transliterate(sHira,0,Len(sHira),nOffset)
msgbox sKata
oTransliteration.loadModuleNew(_
Array(com.sun.star.i18n.TransliterationModulesNew.LOWERCASE_UPPERCASE),oLocale)
sKata = "Kata"
sHira = oTransliteration.transliterate(sKata,0,Len(sHira),nOffset)
msgbox sHira
End Sub
全角 - 半角変換 
Sub transliteration_3
Dim nOffset() As Long
aLocale = CreateUnoStruct("com.sun.star.lang.Locale")
aLocale.Language = "ja"
aLocale.Country = "JP"
' 全角 -> 半角
oFull2Half = CreateUnoService("com.sun.star.i18n.Transliteration")
oFull2Half.loadModuleNew(_
Array(com.sun.star.i18n.TransliterationModulesNew.FULLWIDTH_HALFWIDTH), aLocale)
sFull = "123a"
sHalf = oFull2Half.transliterate(sFull, 0, Len(sFull), nOffset)
msgbox sHalf
' 半角 -> 全角
oHalf2Full = CreateUnoService("com.sun.star.i18n.Transliteration")
oHalf2Full.loadModuleNew(_
Array(com.sun.star.i18n.TransliterationModulesNew.HALFWIDTH_FULLWIDTH), aLocale)
sHalf = "123a"
sFull = oHalf2Full.transliterate(sFull, 0, Len(sHalf), nOffset)
msgbox sFull
End Sub
NumToCharFullwidth を指定すると数字のみを半角から全角に変換できます。
漢字 - 数値変換 
Sub transliteration_4
aLocale = CreateUnoStruct("com.sun.star.lang.Locale")
aLocale.Language = "ja"
aLocale.Country = "JP"
oText2Num = CreateUnoService("com.sun.star.i18n.Transliteration")
oText2Num.loadModuleNew(_
Array(com.sun.star.i18n.TransliterationModulesNew.TextToNumLower_zh_CN),aLocale)
Dim nOffset() As Long
sKanji = "千二百五十一"
sNum = oText2Num.transliterate(sKanji,0,Len(sKanji),nOffset)
msgbox sNum
oNum2Text = CreateUnoService("com.sun.star.i18n.Transliteration")
oNum2Text.loadModuleNew(_
Array(com.sun.star.i18n.TransliterationModulesNew.NumToCharKanjiShort_ja_JP),aLocale)
sNum = "123"
sKanji = oNum2Text.transliterate(sNum,0,Len(sNum),nOffset)
msgbox sKanji
End Sub
NumToCharKanjiShort_ja_JP を指定すると 123 -> 123 となります。NumToTextLower_zh_CN を指定すると 123456 -> 十二万三千四百五十六 となります。