リストボックスの扱い方(その2) −LibreOffice Base−
リストボックスのどの項目を選択状態にするかをマクロから操作します。 まず、前回の記事を参考にリストボックスをフォームに配置し、値リストは「"明治";"大正";"昭和";"平成";"令和";""」と設定してみてください。改行は、Shift+Enterで。 リストボックスの横にでもボタンを配置し、...
日々の雑感その他
リストボックスのどの項目を選択状態にするかをマクロから操作します。 まず、前回の記事を参考にリストボックスをフォームに配置し、値リストは「"明治";"大正";"昭和";"平成";"令和";""」と設定してみてください。改行は、Shift+Enterで。 リストボックスの横にでもボタンを配置し、...
JA福岡市様の作成のPDF(実践編PDF)では、リストボックスの項目用のテーブルを作ってSQLでリスト内容を設定して、という方法が推奨されているようです。ただ、リレーション前提のテーブル設計は、Base では初心者は躓きやすい。上記のPDFでは2番目に説明されている、直接リストボックスに値を設定す...
「リレーションシップはなるべく最小限に」が、コツかなあ、と思います。 例えば Access の場合は、「1,男;2,女」みたいなテーブルを作ってマスターテーブルと連結して、というのが普通でしょう。テーブルの正規化はある種の快感を伴う作業でもありますが、しかし初心者が Base で最初からこ...
LibreOffice Base を Microsoft Access 代わりに使おうとしている私にとって致命的に不満なのが、フォームやレポートで各レコードのデータの大きさに合わせてテキストボックスの高さを自動調節できないこと。Accessで言うところの、「印刷時拡張」の機能です。ないですよね?プ...
押されたボタンのタイトル文字列を取得するには、下記の例を参考に。ボタンの実行時のイベントに割り当ててください。 ボタンだけでなく、ラベルのイベントに割り当ててラベルのタイトル文字列を取得するのもこのマクロで可能。 Sub LabelView(oEV) oLabel = oEv.Sour...
The Apache OpenOffice Wiki から引用。 関数の記述の中身は理解しなくていいです。コピペしてマクロモジュールの最終行のあたりに突っ込んでおけば、Replace関数が使えるようになります。 使用例として、 msgbox Replace("abcdefg","bc","...
元々コメントだった行を削除すると実行時にエラーが出るとか、単なるmsgboxの行を削除するとなぜかsqlの実行部分でエラーが出るとか、そんな謎のエラーに悩まされている場合の対処法。 今まで実行したことがないディレクトリに.odbファイル本体を移動し、そこで実行する。 これで解消しました...
.odbファイル自体を閉じるマクロ。 Sub DocClose If ThisComponent.getParent().isModified Then rtn1 = msgbox("ドキュメントを閉じます。",4+48+256,"確認") If rtn1 = 6 Then...
.odbファイル自体を上書き保存するマクロ。 Sub DocStore ThisComponent.getParent().store() End Sub ( LibreOffice 6.2.4.2 / Linux Mint Debian Edition3(LMDE3)”...
LibreOffice BASE は使えるか? (2) マクロで、SQL実行 −−count だけ返す関数−− より。 前回も同じような関数を掲載したけれども、今回の関数の方がスマート?どういう違いがあるのかはよくわからないけれども、とりあえず両方ともうまく動いた。 関数は、下記。 ...