今回は、フォーム コントロールのスピンボタン(上下ボタン)を使って数値を増減させる方法を紹介する。マウスをクリックするだけで数値を等間隔に増減できるので、値を何度も変更しながら結果を確認する場合などに活用すると、快適な操作環境を構築できるだろう。
フォーム コントロールと「開発」タブの表示
Excelにはフォーム コントロールと呼ばれる機能が用意されている。これは、
・数値を増減させる上下ボタン(スピンボタン)
・一覧から値を選ぶ選択肢(コンボボックス / リストボックス)
・チェックボックス
・ラジオボタン
などのパーツを設置するために用いられる。これらのパーツはVBAと組み合わせて利用するのが一般的であるが、中には単独で利用できるものもある。今回は、フォーム コントロールの中で最も手軽に利用できる「スピンボタン」の使い方を紹介していこう。
以下の例は、住宅ローンの借入額、金利、返済期間から「毎月の返済額」を自動計算するシミュレーションだ。「毎月の返済額」の計算には関数PMT()を使用している。
このシミュレーションを実際に使うときは、「借入額」「金利」「返済期間」の数値を色々と変化させながら「毎月の返済額」を確認していくことになる。このように数値を何度も変更するセルにスピンボタンを設置しておくと、その都度、数値を入力しなおす必要がなくなり、快適に操作を進められるようになる。
それでは、スピンボタンの設置方法を解説していこう。フォーム コントロールのコマンドは「開発」タブのリボンに用意されている。よって、あらかじめ「開発」タブを画面に表示しておく必要がある。まずは「ファイル」タブを選択し、「オプション」をクリックしよう。
すると、以下の図のような設定画面が表示される。ここでは「リボンのユーザー設定」を選択し、「開発」の項目にチェックマークを付けてから「OK」ボタンをクリックする。
これでExcelの画面に「開発」タブが表示されるようになる。
数値を増減させるスピンボタンの設置
続いては、ワークシート上にスピンボタンを設置するときの操作手順を解説していこう。最初にスピンボタンの描画を行う。「開発」タブにある「挿入」をクリックし、「スピンボタン」のアイコンをクリックする。この状態でワークシート上をドラッグするとスピンボタンを描画できる。
描画したスピンボタンは、四隅のハンドルをドラッグするとサイズを変更できる。また、スピンボタンそのものをドラッグすると、スピンボタンの位置を移動できる。
スピンボタンの配置を調整できたら、スピンボタンの動作を設定していこう。スピンボタンを右クリックし、「コントロールの書式設定」を選択する。
すると、以下の図のような設定画面が表示される。ここでは、初期値として表示させる数値を「現在値」に指定し、「最小値」と「最大値」を指定すればよい。さらに、上下ボタンのクリックでどれだけ数値を増減させるかを「変化の増分」に指定する。最後に、スピンボタンで操作するセルを「リンクするセル」に指定する。
上記のように設定した場合、C4セル(借入額)の数値をスピンボタンで増減できるようになる。その初期値は2500で、最小値は1000、最大値は8000。上下ボタンを1回クリックする毎に数値が100ずつ増減するようになる。
「OK」ボタンをクリックして設定画面を閉じたら、一度スピンボタンの動作を確認してみるとよい。上下のボタンをクリックする毎に、C4セルの数値が100ずつ増減していくのを確認できるはずだ。
もちろん、C4セル(借入額)の変化に応じて「毎月の返済額」も自動的に再計算される。このように数値を頻繁に変更するセルにスピンボタンを設置しておくと、その都度数値を入力しなおす必要がなくなり、快適にExcelを操作できるようになる。
なお、今回の例では、スピンボタンで数値を100ずつ増減させているが、2550のように100で割り切れない数値をC4セルに入力することも可能だ。この場合は、普通にC4セルを選択してキーボードから数値を入力すればよい。
同様の操作を繰り返して、C6セル(金利)とC8セル(返済期間)にもスピンボタンを設置すると、以下の図のようなワークシートが完成する。
スピンボタンのサイズや位置を揃えて配置したい場合は、スピンボタンを右クリックして、「書式」タブにある「オブジェクトの配置」や「サイズ」を利用するとよい。
ちなみに、不要になったスピンボタンを削除するときも、右クリックでスピンボタンを選択する。その後、「Delete」キーを押すと、スピンボタンを削除できる。スピンボタンを普通にクリック(左クリック)した場合は、スピンボタンに設定されている動作が実行されてしまうので、スピンボタンを選択するときは「右クリックを使用する」と覚えておこう。
増減値を1以下にする場合は?
これで、スピンボタンの基本的な使い方を解説できた。しかし、ひとつだけ注意すべき点がある。それは「変化の増分」に小数点以下を含む値を指定できないことだ。たとえば、「金利」を操作するスピンボタンの「変化の増分」に0.1を指定しても、その増減値は0.1にならない。
「変化の増分」に指定できる値は整数だけなので、上下ボタンのクリックにより0.1ずつ値を変化させる場合は何らかの工夫が必要となる。最後に、この問題の解決方法を紹介しておこう。
まずは「金利」を操作するスピンボタンの設定を変更する。今回の例では、金利の初期値を1.50、最小値を0.10、最大値を7.00とし、上下ボタンをクリックしたときに数値を0.10ずつ増減させたいと考えている。そこで、これらを100倍した値を各項目に設定。また、「金利」のセル(C6セル)を直接操作するのではなく、未使用のE6セルをリンクボタンで操作するように設定を変更した。
これでスピンボタンの操作対象はE6セルになる。その初期値は150で、10~700の間で10ずつ数値が変化することになる。このE6セルを利用して「金利」の数値を変化させる。具体的には、「金利」を入力するC6セルに「E6セルの値を1/100にする数式」を入力すればよい。このように他のセルを経由して数値を変化させると、「金利」を0.1ずつ変化させることが可能となる。
このとき、E6セルに150などの数値が表示されるのを気にする方もいるだろう。この場合は、E6セルの書式を「文字色:白」に変更してしまえばよい。これで、見た目上は、E6セルに何も表示されなくなる。
このように、スピンボタンで「1未満の増減値」を指定するときは少しだけ工夫が必要になる。スピンボタンの応用テクニックとして合わせて覚えておくとよいだろう。