LibreOffice CalcでVBAを使ってみた


はじめに

を参考にさせて頂きました。圧倒的感謝……!

環境

  • Windows 10 Home (64bit)
  • LibreOffice Calc 6.4 (x64)

手順

マクロの作成

LibreOffice Calcのメニューから[ツール]→[マクロ]→[マクロの管理]→[Basic]を選択すると[Basicマクロ]ダイアログが表示される。(Alt+F11キー

マクロの記録先から〜.odsファイルを選択し[新規作成]ボタンをクリックする。
名前:Module1
[LibreOffice Basic]ウィンドウが表示される。

Option VBASupport 1

Sub Main
    MsgBox "hello, world"
End Sub

マクロエディタの実行でマクロの単体テストができる。

コントロールにマクロを割り当てる

LibreOffice Calcのメニューから[表示]→[ツールバー]→[フォームコントロール]を選択する。
デザインモードにしてボタンを配置する。

プッシュボタンを右クリックして[コントロールのプロパティ]を選択する。

[イベント]タブの実行時にマクロを割り当てる。
ライブラリ:〜.ods/Standard/Modul1
マクロ名:Main

デザインモードを解除してプッシュボタンをクリックする。

おまけ

Sub Speak
    Dim voice
    Set voice = CreateObject("SAPI.SpVoice")
    voice.Speak("hello, world")
End Sub