LibreOffice Calc Basic - メッセージを表示する方法

◆MsgBox関数

 MsgBox関数を利用すると、ユーザーに対してメッセージを表示することができます。
この関数は、以下のように使用します。

MsgBox "Hello world"

◆パラメータ

メッセージボックスの表示形態は、パラメータ指定により変更できます。ここでは、ボタンの種類、標準ボタン、追加表示するアイコンをパラメータ指定により設定できます。

  • 0 - OKボタンのみを表示します。
  • 1 - OKおよびキャンセルの各ボタンを表示します。
  • 2 - キャンセルおよびやり直しの各ボタンを表示します。
  • 3 - はい、いいえ、キャンセルの各ボタンを表示します。
  • 4 - はい、いいえの各ボタンを表示します。
  • 5 - やり直しおよびキャンセルの各ボタンを表示します。

 なお、表示ボタンの指定用パラメータ値に以下の値を加えることで、いずれか1つのボタンを標準ボタンに指定できます。たとえば、はい、いいえ、キャンセルの各ボタンを表示させ(指定値 3)、キャンセルボタンを標準ボタンに設定する(指定値512)には、両者の値を加えた3+512=515を指定します。

  • 0 - 1番目のボタンを標準ボタンに設定します。
  • 256 - 2番目のボタンを標準ボタンに設定します。
  • 512 - 3番目のボタンを標準ボタンに設定します。
また、以下の値をパラメータ値に加えることで、該当するアイコンを追加表示できます。
  • 16 - ストップ記号のアイコンを表示します。
  • 32 - クエスチョン記号のアイコンを表示します。
  • 48 - エクスクラメーション記号のアイコンを表示します。
  • 64 - ヒント記号のアイコンを表示します。

このようなパラメータ値は、以下のように指定します。

MsgBox "Do you want to continue?", 292

この場合は、はいといいえのボタンを表示させて(指定値4)、2番目のボタン(いいえ)を標準ボタンに設定し(指定値256)、クエスチョン記号のアイコンを表示させる(指定値32)ので、パラメータ値として4+256+32=292を指定します。

メッセージボックスに複数のボタンを表示した場合、通常は、どのボタンをユーザーが押したかを確認する処理が必要となります。このような処理には、以下の戻り値を利用します。

  • 1 - OK
  • 2 - キャンセル
  • 4 - やり直し
  • 5 - 無視
  • 6 - はい
  • 7 - いいえ

たとえば先のサンプルコードの場合、戻り値の判定は以下のようにして行えます。

    If MsgBox ("Do you want to continue?", 292)=6 then
        ' はいのボタンが押された場合
    Else
        ' いいえのボタンが押された場合
    End If

◆タイトルを表示する

MsgBoxでは、メッセージとして表示するテキストおよび表示ボタンの指定用パラメータの他に、第3のパラメータとしてメッセージボックスのタイトルを設定できます。

MsgBox "Do you want to continue?", 292,"Title"

このメッセージボックスのタイトル指定を省略した場合、「soffice」が標準タイトルとして使用されます。

▼ページトップへ