<HOME  <お願い事項   <Access2002 TOP   <Access97 TOP   <サイト内検索
 MS-Access2000超入門部屋--電卓を作ってみる


今日は、「電卓」を作ってみようと思います。

といっても、 電卓を作ることそのものは目的じゃないんですよ。電卓なんて、作る必要はまったくありません。
もし、皆さんの中に、「VBAがわからないと、バカにされるんじゃないか」なんて、思ってる方がいらっしゃれば、なんですが、
そうではない、ということを知るために、VBAというものを体感する目的で、カンタンな電卓を作ってみよう、と思うわけです。

VBAってよくご存知の方には、ほとんど無意味なコーナーです。
どんなものか全然わからない、VBA知らないと恥ずかしいんじゃないのか?なんて思ってる方だけ、ご一緒いたしましょう。
なにごとも「どんなもんか雰囲気を知る」っていうのは、大切だと思うんですよ。

といっても、本物の電卓と同じような処理は、残念ながら無理です。
「ある程度」ってことで、ほんとに基本的な四則演算の部分だけ作ってみて、「VBAで何かしら処理を作ってみる」という雰囲気を味わうことにいたしましょう。

1ページに納めてしまったので表示が重いかもしれませんが・・・・・・一気に駆け抜けますよ!まいりましょう。


最初に、少々余談になりますが・・・。
なぜ「電卓なんて作る必要はない」と申し上げたかと言うと、電卓って、Windowsのアクセサリの中にありますよね。

↑こういうのです。「アクセサリ」の中にあります。いろんな機能がプラスされた、本格的な計算機です。

これを、例えば、フォームの中のコマンドボタンクリックしたときに出てくるようにしておけば、画面上でちょっとした「予備計算」みたいなのが可能になりますよね。
フォームに埋め込むのは、ちょっと無理かもしれませんが、電卓をちょこっと起動させるってことはカンタンです。

アクセサリの「電卓」は、calc.exeという名前の実行ファイルです。
これを呼び出せばよいのですが、多分、PCによって(Windowsのインストール方法や、Windowsの種類によって)、このファイルのある場所が違うと思うんで、まずは検索してみましょう。Windowsのエクスプローラ(インターネットエクスプローラじゃないですよ)の中の検索ツールとかでカンタンに検索できますよね。

わたしのPCだと、C:\winnt\system32\calc.exe ←ここにありました。

そしたら、例えば、Accessのフォームの中に、コマンドボタンを作っておいて・・・。

クリック時のイベントで、VBAを使ってこんな処理を書きます。

「入力の途中で、だいたいいくらくらいになるかちょっと見積り計算したい」なんてとき、手元に電卓を置いとくのも手ですが、こうした「他のソフトやツール」を呼び出して使う、というのも、ひとつの方法ですよね。


そんなこんなで、別に苦労して「電卓」なんて作る必要はないのです。
でも、ある意味「電卓」って、実行結果がわかりやすい、っていうメリットがあるので、あえて今日は電卓作りをやってみようと思います。
繰り返しますが、あくまでも「VBAってどんな感じか雰囲気を知る」ためのコーナーであって、電卓作ることは目的ではありませんよ。
お時間のあるときに、ゆっくり取り組んでみてくださいね。
完成させることが目的ではありません。雰囲気をつかむことが大切ですので、わからなくなったり同じようにできなくなったらそこで終了してください。
無理に先に進もうとして、返ってVBAというものに不信感を抱いてしまっては逆効果です。どういうものか知るためのプロセスと思って、気軽に挑戦してみてください。

では、ココからが本題です。レッツゴー!



では、まず、無地のフォームをひとつ作りましょう。
大きさは適当でオッケー。おいおい調節していきます。

フォームのスクロールバーとかレコードセレクタとかはいらないので、フォームのプロパティで表示しないように設定してしまいましょう。
あと、フォームの標題も、「電卓」とかにしとくと、雰囲気出ますよ。

で、たんなるテキストボックスと、コマンドボタンをひとつ、作ります。
ボタンの大きさは、適当に調節してください。これが、「1」のボタン。こういうのをあと9個作って、それぞれ数字を割り当てますから、あんまり大きくないほうがいいですね。で、ボタンの標題を「1」ってしておいてください。標題ですから、半角でも全角でもお好みでよいです。

で、だいたい、ひとつのコマンドボタンの大きさが決まったら・・・。
同じ大きさのボタンを9個作るのめんどくさいですよね。
なので、コピーしましょう。

今作ったボタンをクリックして選択した状態(ハンドルが出ている状態)にして、
キーボードのCtrlキーを押しながら「C」のキーを押して、
続けて、Ctrlキーを押しながら「V」を押します。

これで、カンタンにコピーできますよ。
おなじことを繰り返せば、コマンドボタン10個なんて、カンタンカンタン。


配置がぴちっとそろわないなぁってときは、「グリッドにあわせる」という機能をうまいこと活用するとよいですね。
まず、今作った10個のコマンドボタンを全部選択します。
そうですねぇ・・・。Shiftキーを押しながら、ひとつずつ丁寧にクリックしていってもいいし、フォーム上をななめにそっとドラッグしてもいいですね。
ドラッグすると、ドラッグした軌跡にひっかかったテキストボックスとかコマンドボタンを、とりあえず全部選択したことになりますから、うまいことドラッグすれば10個のコマンドボタン全部選択できます。

全部のコマンドボタンにハンドルが表示されたら、その状態で、メニューバーの[書式]→[サイズ変更]→[グリッドに]を選びます。
多分、微妙にずれてたとこが、ぴしっとそろうようになると思います。といっても、ずれてるというよりかなり離れちゃってる場合は、効果ないですから、ボタンを移動させながら、この機能を何回か使ってみてください。そのうちきちっとそろうようになりますよ。


多分、ただ作っただけのコマンドボタンだと、「コマンド1」とか、適当な名前のままだと思います。
これでも、ちゃんと「どのボタンがなんていう名前か」わかってれば問題ないんですが、10個もボタンがあるし、ややっこしくなりそうですよね。
なので、標題の「1」とか「2」とかいう数字と、ボタン名はそろえておいたほうがいいんじゃないかなって思うわけです。

ちょっと面倒ですけれど、各ボタンの標題と、ボタン名をそろえていきましょう。
例えば、「1」のボタンなら「ボタン1」とか・・・。
あ、コマンドボタンの名前の場合は、数字の「半角・全角」意識してくださいね。わたしは、「ボタン1」にしましたけど、1は半角の数字にしました。
全角でも半角でもどっちでもよいですが、皆さんご自身が、半角にしたか全角にしたかどっちだかわけわかんなくなっちゃうっていうのは、ナシですよ。
皆さんが承知してらっしゃれば、半角でも全角でもどっちでもオッケー。でも、半角のカタカナは使わないようにしましょう。これって、いろんな意味でコンピュータに不向きな文字の部類に入りますからね。使わないほうがお勧めです。なんで半角カタカナが好ましくないのか、は、Accessに限ったことではありませんので、理由は少しずつ理解をしていくってことで、ここでは極力使わないほうがいいんだ、とだけ理解をしてください。

あと、テキストボックスの名前も確認しておきましょう。
これは、とりあえず今ひとつしかないから、このままでもいいかも。わたしのは テキスト0っていう名前でした。0は半角のゼロでした。このままでいいや。

わたしのはこんな感じになりました。

ついでに、プラスとイコールのボタンも作って、「足す」「イコール」というボタン名にしました。標題は+記号と=記号をそのまま出すことにしました。


それではいよいよ、「1っていうボタンをクリックしたら、どうする」という、具体的な処理の内容に入ります。
つまり、ココから先が「VBA」になります。まあ、こんな感じですから、って感じで、あまり深く考えずおんなじようにやってみてください。

1のボタンのプロパティの中の「クリック時」というところをクリックします。
すると、右側に...っていう小さいボタンが出てきますよね。

VBAというのは、コンピュータのプログラム言語のひとつです。
MicrosoftOfficeという製品群の中専用の「Basic」というタイプの言語ってことですね。
なので、VBAという文法に基づいて、プログラムを書く、ということになるわけですが、好き勝手なトコに入力しても意味がありません。
そこで、VBA専用の「エディタ」があるんで、それを呼び出します。

「コードビルダ」ってのを選びます。

んで、出てきた画面の、カーソルがピカピカしているところに、1行だけ入力しましょう。

テキストボックスの名前、さっき確認しましたよね。
テキストボックスに、「1」っていう数値を代入する、っていう命令になります。1は半角です。数値だから。



じゃちょっとばかり確認です。左上に、Accessのアイコンがありますよね。
これクリックすると、コードビルダじゃなくて、フォームとかデータベースウィンドウが手前に出てきます。画面下のタスクバーでも切り替えできると思いますが、左上のツールボタンでもオッケーです。



フォームをフォームビューに切り替えましょう。一番左上のツールボタンでしたよね。
でもって、「1」のボタンをクリックすると・・・。

テキストボックスに1って入ります?

ここまでできればしめたもんです。
ちょっと手を止めて、なぜテキストボックスに「1」という数値が現れたのか、どういうタイミングで「1」と出たのか、というところを、じっくりおさらいしてください。
「ボタン1のクリック時のイベントというところに、テキスト0に1って入れなさいという命令をVBAで書いたので、1というボタンをクリックしたらテキストボックスに1と入った」のです。これがVBAです。ちゃんと書けばちゃんと結果が出ます。何もしなければ何も出ません。間違って書いてたら、やっぱり出ません。
VBAってそんなものです。別に便利なものでも高度なものでもなくて、1から10までお膳立てしてあげないと何も起らないもの、ということですね。

こういう、「なんかしたら、なんかが起る」みたいなのを総称して、イベントって呼んでます。
まあ、言葉自体はあんまり意味はないので、こういうのはなんとなく理解するくらいにしておきましょう。

じゃあ、「2」っていうボタンをクリックしたら???
何も起りませんよね。っていうか、テキスト0には1って入ったままです。
だってまだそれしか命令作ってないじゃないですか。ねえ。

じゃあ、続きです。
同じように、各コマンドボタンをクリックしたら、その数値をテキスト0に代入するように作ります。
面倒?何を言ってるんですか。書かないと、なんも起らないですよ。10個ボタンがあったら、10個イベントが必要なんです。

ほんとは、上の3行でワンセットの処理なのですけれど、まあ、だいたい入力することはお決まりなので、ほんとに必要な真中の部分だけ入力すればいいようにコードビルダが手伝ってくれてるというわけですね。
なので、3行分をボタンの数だけコピーして、Private Sub xxxxxxxx_Click( ) の青いトコ(ボタン名)だけちょこっと書き換えて作っていってもいいかもしれないですね。

コードそのものの書き方は、今日はあんまり細かく悩まないようにしてください。
そのかわり、「どのボタンがなんという名前で、これをクリックしたらなんという数値が出てくるべきなのか」ということをしっかり考えながら作っていきましょう。



10個のボタン分の処理、できました?
できたら、再びフォームビューに切り替えましょう。あ、適当なところで、フォーム、保存してくださいね。フォーム名は何でもいいですから。

2ってボタンをクリックしたら、3ってボタンをクリックしたら・・・。と、全部のボタンを試しましょう。

ここまで、オッケーですか?



これで、どうやら、1桁の数同士の足し算とかなら、できそうです。
でも・・・例えば、「12」って入力したいとき、今、できないですよね。

ふつうの電卓だと、1と2を続けて押せば、「12」ってなりますけど、今のこの電卓は1の次に2を押した時点で、1は消えてしまいます。

これじゃなんなので、一工夫します。

みなさん、大切な書類にいろいろ書き込まなくちゃならないときって、どうします?
例えば、今日の売上の合計とか、参加者人数の合計とか、そういったものを書き込まなくちゃならない書類があって、手元にバラバラと数枚の伝票があって、それ全部足し合わせた答えを書かなくちゃいけない場合・・・。とりあえず、なんか別のどうでもいい紙に書き出して計算して確認してから、大切な書類に必要な数字だけ書く・・・とか、そういうこと、しません?

こういった動作を思い描くことは、VBAで処理を作ってくときにとっても必要になりますよ。

プログラムでも、そういった方法をよく用います。
つまり、「1」と「2」と「6」をクリックしたとしたら、いきなりテキスト0に放り込まないで、とりあえず何か手元に順々に数字を書き込んでおいて、「これで全部そろいました」とわかった時点で、テキスト0に移す・・・とりあえずのメモ用紙みたいな役割を担うのが「変数」というもんになります。

難しいことは難しいんですけど、今日は、とにかく、「メモ用紙と、大切な書類の記入欄」のふたつのやり取りを思い描いてみてください。
あんまり、「プログラムを書いているーーーーー」とリキむと、返ってわかりにくいもんだと思いますよ。

とりあえずのメモ用紙には、なんかしら名前を付けてやります。何でもいいんですが、あんまりありがちな名前だとVBAが困ってしまうこともあるので、今回のこの電卓の中で、フォーム名とかも含めて、まだ1回もつけてないような名前にしましょう。
例えば、わたしは、Kazu1という名前にしようと思います。
そしたら、このコードビルダのウィンドウの一番上の方・・・。Optionなんたらって書いてあるとこのすぐ下に、

Dim Kazu1

って書きます。これで、この電卓処理の中で、kazu1っていうメモ用紙を使うかも、という意味になります。

で、さっきまで、テキスト0に直接1とか2とか入れてましたけど、そこんとこを変えてやります。

↑こうしてやると、「1」「2」「6」ってクリックしたら順に「126」っていう数字の並びが、Kazu1っていうメモ用紙に書き込まれて残っていくことになります。
&っていうのは、文字と文字をつなげるときに使う記号です。もしかしたら + 記号でもいけるかもしれませんけど、とりあえず今日はこれでいきましょう。

面倒?しょうがないでしょう。イベントが10個あるんだから、全部書き換えなくちゃ。ほれ、がんばるがんばる。

で、それぞれ、Kazu1の中身をテキスト0に代入するようにします。
これで、今どこまで入力したか、途中経過もテキスト0の中に表示されるようになりますね。

うわー・・・たくさん並びましたね。



そんなこんなで、各コマンドボタンのクリック時のイベントがそろいました。


では、フォームビューに切り替えて、テスト・・・
ボタンをクリックしたら、その数字が連なって表示されるようになると思うんですが、いかがですか?

数字のボタンを押したら、押した分だけ、Kazu1というメモ用紙に記録されていきます。
つまり、このKazu1の中身を空っぽにしないと、ずっとずっと、クリックした数字が記憶されつづけていくってことになります。
あ、といっても、このフォームを閉じたら、クリアされますけどね。
でも、入力しなおしたいときだってありますよね。そう、電卓でいうところのキャンセルボタン、ってやつですね。

じゃあ、同じ要領で、キャンセルするイベントを作りましょう。
ええと、わたしは、Cっていう名前のボタンを作って、標題もCにしました。こいつの「クリック時のイベント」をこしらえます。

ケースバイケースでいろんなことを考えてかなくちゃなんないんですが・・・。
とりあえず今回は、難しいことは考えずに、「Kazu1という変数を空っぽにする」という意味で、Nullという言葉を代入してみましょう。

Kazu1というメモ用紙が、数値専門なのか文字専門なのか、とか、そういうことがいろいろ関係してくるんですけど、今回はNullっていうことばを代入すれば、空っぽになってくれます。テーブル作るときも「データ型」ってけっこういろいろ気を配りますよね。データの型って、コンピュータ使っていく上では常に付きまとうことなんですよ。特に、VBA使おうなんていう場合は、データ型についていろいろ詳しく知っておかないとならないんです。
そういうのは、とにかく雰囲気つかんでから、ってことで、行くとしましょう。



だいたい、こんな感じで、「どういうときどういう動作をどういう順番にやるか」ということを、VBAというプログラム言語でコツコツ1行ずつ書いていく、というのが概要です。で、こういう命令文がたくさん集まったオブジェクトが「モジュール」です。決して便利なものでも高度なものでもありません。言うなれば、少々特殊なオブジェクト、といったところですね。

さて・・・これから、足し算や引き算をして、出た答えをテキスト0に表示させる処理を作っていくわけなんですが、さらにもうひとつメモ用紙を用意しなくてはならなかったり、いろいろ「プログラミングっぽい考え方」が必要になってきます。
とりあえず、そこそこの電卓機能が使えるようになるよう、作りこんでいきますので、おなじようにやってみてください。
あくまでも、どんなもんか雰囲気を知るためであって、「足し算はどうすればいいのか」みたいに細かく悩まないようにしていってくださいね。

ここで焦っちゃいけません。実現させたい動作と、具体的なコードの書き方と、すぐに結びつかなくても当然なので、「こういう処理のときはどう書けばいいのか」なんて、あんちょこに考えてはいけないですよ。こういうのを設計するのを仕事にしている専門家がいるくらいなんですから、一筋縄ではいかないのです。とにかく、VBAっていうのはこんな感じなので、慣れていくことが大切です。ここで難しく考えすぎてイヤになってしまってはマイナスですもんね。



メモ用紙がもうひとつ必要になるので、Kazu2っていう名前の変数を用意しました。

で、「足す」のボタンをクリックしたときのイベントに、こんな感じの処理を加えます。

「イコール」のボタンでは、こんな感じの処理を作ります。

やってることはおんなじような感じですね。
とりあえず今はまだ、「足す」ボタンしかこしらえてないので、まあこんな感じでオッケーです。



そしたら、テストを・・・。

例えば、「1」「+」「3」「=」でどうでしょう?
・・・・・。あれ?「13」になっちゃったぞ???

うーん。そうですねぇ。1と3をつなげちゃってるんですね。どうやら、数字なのに文字扱いされちゃってるみたい。
「データ型」が影響してるんです。こういうのが、大変ですね。VBA使っていこう、って思ったら。。。データ型、「テキトー」じゃ許されません。

つまり・・・「変数」のデータ型です。何も記さないと、この中に入ってきた値を数値として扱うか文字として扱うか、Access任せになります。だから、「13」になっちゃったんですね。

Kazu2の方は、足し合わせた数を入れたいので、この変数を数値型にします。

変数名のところのすぐ後ろに半角スペースひとつ開けて、AS って入力すると、なんか候補がいっぱい出てきます。
まあ、候補から選ばなくてもいいんですけど・・・。

数値型って言っても、いろいろあるんですよ。この辺がまた難しいところなんですけど・・・。
今日は「Double」っていうのを選んでください。

kazu1は、そのままです。これは、ある意味「文字扱い」してもらわないと困るので、どっちつかずの宙ぶらりんのままにしておこうと思います。
ほんとはね、「データ型」って、ちゃんと決めたほうが、内部的には好ましいんですよ。こういうのも、少しずつ慣れていってください。



数値型の変数には、Nullという言葉を入れることはデキマセン。"Null"って、数値じゃありませんもんね。
Cのボタンのイベントで、変数を空っぽにしますんで、下のように書き加えてやります。
これ、数値型の変数にしたKazu2にNullを入れようとすると、「型が違います」とかキツイエラーメッセージになっちゃいます。
こういうのも、おいおいイヤってほど出てきますから、とにかく今日のところは、下のような感じで入力をしてみてくださいね。

さあ、今度はどうでしょう。
Kazu2は、数値として値を受け取りますから、ちゃんと足し算した結果を出してくれるんじゃないかと思います。

出ます?



だんだん電卓っぽくなってきましたね。
では、他の四則演算の場合も考えてみましょう。
足し算以外の計算は、一筋縄ではいかないものばかりですよね。

では、ここからは、それっぽい処理ができるよう、一気に作っちゃってみましょう。

まず、「ちょっと前に押された四則演算のボタンが、足すか引くか掛けるか割るか、どれか?」を、一時的に覚えさせるためのメモ用紙を用意します。
こういうの、よくやるんですよ。「フラグ」とかいう言い方する人もいますね。メモ用紙のすみっこに、ちょっとした記号とか目印に書いておいたりするような、そんな感じの処理を作るんです。

ちょっとメモしておくと、あとでわかりやすそうです。半角のシングルコーテーションの後に、コメントを入力しておきましょう。

では、まずは「引く」のボタンをクリックしたときは・・・。

足し算は、ゼロに5を足したら5になりますけど、引き算は、ゼロから5を引いたら−5になりますよね。
つまり、一番最初・・・Kazu2にまだ何もメモってないときと、すでにKazu2に何かしらメモしてある場合とで、引き算のやり方を変えてやらないと、やたらと引き算されても困っちゃうわけです。そこで・・・。Kazu2がゼロかそうでないかによって、やることをわけます。

1−2 っていう計算をさせるとき、3っていう答えを出すのは、真中の「−」を入力したときですか?
ちがいますよね。。。=を押したときか、あるいは、1−2+3・・・と計算が続くなら、次の「+」の記号をクリックしたときですよね。
お手元の電卓を使って、確認してみてください。
つまり・・・「前になんの記号を押したのか」によって、どういう計算をするのか4択になるわけですね。
4択はこんな感じで書きます。

で、最後に・・・このイベントは「引く」ボタンをクリックしたときの処理なので、次にイコールとか何か入力されたら、引き算してね、ということを、f というメモ用紙に書き記しておきます。



これで、引き算ができるようになったと思います。テストしてみましょう。
「数字」「−」「数字」「=」で、答えが、出ますか?

最後の f に1か2か3か4を代入するところだけ異なりますけれど、後の処理は足す場合も引く場合も掛ける場合も割る場合も同じです。
挑戦してみてください。



さて・・・あとは、例外をいくつかつぶしていかないとならないんですけれどね・・・。

例えば、テキスト0にまだ何も値が入っていない状態・・・つまり、変数Kazu1もKazu2も空っぽの状態で、うっかり「×」とか押しちゃった場合・・・。
別に計算させるものもないので、処理としては何もしないでもらいたいんですけど、VBAで作った処理は正直に仕事をします。
とりあえず、Kazu2がゼロなので、Kazu1をKazu2に入れて次の処理に備えようとするんですが・・・。

エラーになります。
Kazu2は数値を扱うメモ用紙、Kazu1は数値だか文字だかどっちつかずのメモ用紙。Kazu1は「空っぽ」ですけどKazu2は「ゼロ」。これって、わたしたちにとってはおんなじようですけど、コンピュータにとってはぜーんぜん違うことなんです。

なので、こんな感じのエラーになります。
とりあえず・・・エラーになってるとこはわかったので、処理を止めましょう。止めるときは↓この青いツールボタンです。

ええと・・・。多分、要所要所でこんな感じのエラーが出る可能盛大です。多分。
電卓って、うっかりカチカチ関係ないキーとか押したくなっちゃうじゃないですか。まだ数字入力してないのに「+」とか押したって、意味無いのに・・・。
多分、エラーが出るっていったら、この手のエラーばっかしじゃないかなって思うんですよね。今回のこの電卓の場合は。。。

なので、「とにかくなんでもいいからエラーになったら、何もしない」っていう状況を作りたいなと思います。

下のほうに、何もナシよ、っていう意味で、NASHIっていう「場所」を作ってみました。
あ、別にHEBOでもBUBUでもなんでもいいんですけどね。
NASHI:って入力します。右端に半角のコロンを打ちます。コロンですよ。セミコロンじゃ、ダメです。

で、「+」「−」「×」「÷」を押したときのイベントで、もし、何らかのエラーになった場合はもうとにかくNASHIってとこまで飛んじゃってくれ、という命令を書き足します。

ちょっと難しいですが、がんばってチャレンジしてみてください。



後は・・・そうですねぇ。
割り算の場合だけ、ちょっと注意点が必要かもしれません。
例えば、10÷3って、割り切れないですよね。

まあ、3.33333333・・・って出てもらってもいいんですけど、小数点以下の桁数が定まってないのって、コンピュータってすごく苦労するみたいなんですよね。
ちょっと・・・誤差が出ちゃったりすることもあるんです。
なので、できるだけ、桁数をある程度決めといたほうがいいかも。例えば、小数点以下4桁のとこで四捨五入するとか。

またねぇ。四捨五入ってのが、大変なんですよ。日本独特なのかなぁ。
「切り捨て」ってのはあるんですけどね。Intっていう関数です。他のコーナーでも四捨五入の方法についてちょっと書かせてもらってますので、よかったら後で小技集の方も覗いてみてくださいね。

なので、上のように、ちょっとばかり工夫します。もっと桁を増やしたいときは10000のゼロを増やしてください。
でも、ここであんまり意味も無く増やして欲張ると、結局コンピュータに負担をかけちゃいますから、まあ、今日のところは4桁か5桁くらいにしておいてくださいね。

こうすると、割り切れない場合でも、指定した桁数で四捨五入されて表示されます。



どうでしょう?
後半のほうはオマケです。とにかく、「作らないと何も起らない、作れば、いろいろできる」ものだってこと、おわかりいただけましたでしょうか。
VBAそのものを理解していこうって思ったら、こういう単純で結果がわかりやすい処理をふたつみっつ作ってみるのが一番よいと思いますよ。

「なにをどうしたらどうなるのか」という、処理の流れみたいなのが整頓できて、まずはひととおりの処理をVBAで書くことができたら、次は「如何にして行数を少なくするか」というところがポイントになります。よく見ると、似たような処理が何ヶ所も出てきますよね。今日は雰囲気つかんでいただくのが目的なんでこれでおしまいにしますけど、VBAに慣れてる人が書いたコードって、簡潔で行数も少なくて、とっても見やすいもんなんですよ。そういうの、憧れちゃいますね。
この辺は、焦らずゆっくり理解を深めていってくださいね。がんばりましょう!


電卓としては・・・このくらいが限界かもしれないですね。。。
がんばれば、ふつうの電卓に用意されている機能をもっと盛り込むことができるかもしれませんが、どんどん難しくなりそうですしね。。。

最初にお話したとおり、フォームから電卓呼び出したい、なんて場合は、アクセサリの電卓使ったらいいと思います。
でもね、手作りの電卓も、けっこう楽しいもんですよ。例えばね・・・。

ほら、こんな風に、漢字の表記にしたり、自分でいろいろ工夫できそうですもんね(笑)



(オシマイ)