マイクロソフトエクセルのまとめ記事はこちら
Microsoft Office ブログランキングへ
マクロビルダー
ここでボタンの動作を決める別の方法を記載します。
先ほど作ったボタンをデザインモードで一旦削除します。
それからまた新たにボタンを作ったのが上の画面です。
今度は「コマンド75」になっていますね。
ここで「コマンドボタンウィザート」を「キャンセル」します。
ボタン上でクリックするとボタンの名称を編集出来る状態になります。
ここで「新規」にしてください。
このボタンを選択した状態で「プロパティシート」の「イベント」タブの
「クリック時」の右端にある「…」ボタンを押してください。
「ビルダーの選択」という画面が表示されます。
ビルダーというのは「作る」とか「作成する」という意味のようです。
今回は「マクロビルダー」を使用します。
上記の状態で「OK」を押してください。
上のような画面になりますので矢印を押してください。
メニューが表示されます。
ここから「レコードの移動」を選択してクリックします。
上のような画面になりますね。
ここで動作を決定します。
まず「オブジェクトの種類」で右端の矢印をクリックしてください。
今回、オブジェクトは「フォーム」になります。
次はオブジェクト名というところの右端をクリックしてください。
現在「フォーム」は「販売履歴」しかないので、一つしか表示されません。
複数フォームがある場合は全て表示されますので、該当するフォーム名を選択してください。
次は「レコード」のところで「新しいレコード」を選択します。
最後のオフセットですが、ここを設定すると設定した数だけ移動する
ということですが、「先頭のレコード・「最後のレコード」「新しいレコード」の
場合は個々に設定しても無視されます。
「前のレコード」・「次のレコード」・「移動先指定」の場合は、
指定した数だけ移動します。
上の状態で設定が終わりましたので、リボンの「閉じる」ボタンを押します。
マクロの変更を保存するかどうか聞いてくるので「はい」を選択してください。
デザインモードが表示されますので、通常モードにして、動作確認してください。
コマンドボタンウィザートで作ったものと同じ動作をしましたか。
どちらの方法でも同じ結果が得られます。
またビルダーの選択で「コードビルダー」でも同じことが実現できます。
ここはVBAを使用しますので、VBAは後日ということにしておきます。
通常は、コマンドボタンウィザートが楽なので、そちらで対応できる動作は
「コマンドボタンウィザート」で作成すればいいと思います。
「コマンドボタンウィザート」に無い動作とか、
複数動作をさせたい場合は「マクロビルダー」で作成します。
マクロビルダーで「レコードの移動」に関して設定し、
その下に+「新しいアクションの追加」というところがありますね。
ここに何か設定すると、新しいレコードを選択した後に、
新たに設定された動作を実行します。
要は一つのボタンに複数動作を組み込めるわけです。
一つの例ですがフォームにボタンを作って、「あるレポートを表示せよ」という
命令文を作って、そのあとに「印刷せよ」とすると、そのような動作を実行するというわけです。
VBAを使用するともっと複雑な動作も可能になります。
【このカテゴリーの最新記事】