マイマクロのモジュール名一覧をmsgboxに表示する Libreoffice Calc Basic [LibreOffice Calc Basic]
マイマクロのモジュール名一覧をmsgboxに表示する Libreoffice Calc Basic
Sub basicstanderdDir
'モジュール名一覧
'libreoffice/4/user/basic/Standard/内のファイル名(モジュール名)を調べる
'一覧をメッセージボックスに表示する
'参考サイト
Dim oSimpleFileAccess
Dim oDir As string
Dim oFileList
Dim oDisp
Dim oFileName
oDir = "/home/telstar/.config/libreoffice/4/user/basic/Standard/"
oSimpleFileAccess = createUnoService("com.sun.star.ucb.SimpleFileAccess")
If oSimpleFileAccess.Exists(oDir) then
oFileList = oSimpleFileAccess.getFolderContents(oDir, 0) ' 0 : Not to be Included SubDirectory Name, 1: Included SubDirectory Name
oDisp = "Directory Name : " & oDir & Chr$(10)
oDisp = oDisp & "[ モジュール名 ]" & Chr$(10)
for i = 0 to UBound(oFileList)
'Print oFileList(i) 'ファイル名
'拡張子がxla(モジュール名)か調べる
'msgbox instr(oFileList(i),"xba")
If instr(oFileList(i),"xba")>0 then
oFileName = ConvertFromURL(oFileList(i))
oFileName=Replace(oFileName,oDir,"") 'oDir文字列を””に置換(削除)'URLを削除
oDisp = oDisp & oFileName & Chr$(10)
End if
next i
MsgBox(oDisp , 0, " モジュール名一覧")
else
MsgBox( oDir & " は存在しません", 0, "Caution !!")
Exit Sub
End If
End Sub
Sub myMacroStandardModuleList()
'マイマクロSrandard内モジュール名一覧を表示する
Dim msgTxt As String
Dim moduleName As String
'
moduleName = Dir("/home/telstar/.config/libreoffice/4/user/basic/Standard/*.xba")
'
Do While moduleName <> ""
msgTxt = msgTxt & moduleName & Chr(10)
moduleName = Dir()
Loop
'
Msgbox "/home/telstar/.config/libreoffice/4/user/basic/Standard/" & chr(10) & msgTxt ,,"マイマクロStandard内モジュール名一覧"
End Sub
コメント 0