前書き
VBの基本?
VBも始めは、まずは「Hello World」なるものをラベル等に表示させることですね。どんなプログラム言語もここから始めます。
そして、ある時点でふと、こうするには?という疑問が出てきます。何を見ればいいのやら?どの本に書いてあるの?
例えば、(基本ですが・・)別のフォームから別のフォームの中に書いた関数を使うには?
何処からでも使える関数を作るには?などなど・・・・・
自分の頭の中で簡単なプログラムの絵は出来ているのに、其れを実現するにはどうすれば?という事等結構最初は悩むものです。そういった悩みに役立てば!、ということで小分けにしたノウハウを書き連ねました。これからですけど。我流で書いたところもかなりあるので、おかしいところはご指摘ください。
関数って一体なんだ!
関数とはブラックボックスみたいなものです。
上の汚い絵を見て下さい。丸が三角になって出てきています。
コレを数学で現すと、「Y=aX+b 」になります。Yが三角でXが丸ですね。
では、実際に「Y=5X+2」という関数を作ってみるとどうでしょう。Xに4を入れるとYは22になります。お分かりでしょうか。これが関数というものの正体です。プログラムでも全く同じです。
この関数をVBで書いてみましょう。
Private Function Y(ByVal X As Long) As Long
Y = 5 * X + 2
End Function
と、なります。
Private=この関数はモジュール内だけで使えますよという宣言。モジュールの外からは見られない。
Function =関数です。という意味がある。
後は基本書入門書でも書かれていると思います。
要するに、Xに何らかの変数を入れて、Yで答えを得る関数というわけです。基本はこれだけ。後はプログラマーの腕次第でいろんな関数が出来ます。
さて、それは知ってるけどいったいVBの何処に書けばいいのでしょう?案外これに悩む人が多いようです。また、その使い方もどうするのでしょう?
拍子抜けですが、書くところは何処でもかまいません。使いたいモジュールに書いておけばそのモジュールで使えます。またその使い方ですが写真を見て下さい。
いたって簡単だと思います。使いたいところで「Y( )」と書いて「( )」の中にXになる値、パラメーターを入れるだけです。答えは「Kotae」という変数に代入しておき、「Dbug.print」でイミデイトウィンドウに出力します。
「なんだ、簡単じゃん!」と思えばご理解いただけたかと思います。私見ですが、分かってしまえば簡単なのがプログラムだと思います。
番外編MEのフリーズなど
WinMeのCPUの暴走は結構有名。教えてGOOにも結構載ってたり。
それを停める方法のひとつとして、暴走しているアプリの特定ですが、如何せん既存のツールでは不可能です。
そこで、Win95用の「KernelToys」をマイクロソフトのホームページからダウンロードして、
(英文ですが注意事項などよく読んでおきましょう。翻訳するにはこっち)
次にベクターでこのソフトを日本語化するフリーソフトをダウンロードします。
(「KernelToys」で検索すると出てきます。2004/11/19)
KernelToysを解凍した後、日本語化するフリーソフトを解凍すると日本語化されます。
ここらへんは日本語化するフリーソフトのReadMe.txtに詳しく解説されてます。
WinTop.Exeを起動させてみると、システムの復元とPCヘルスのSTMGR.EXEが暴走しているのが認識されます。(たぶん)
というわけでシステム設定ユーティリティーで起動させないようにします。その為復元等できなくなります。
詳しくはWinFAQをご覧下さい。あくまで自己責任で行ってください。
と、CPUの暴走は今の所ありません。が、フリーズはあります。
でも、インターネットエクスプローラーの修復でフリーズしなくなりました。今のところ快適です。というより使わなくなってきた。
ただし、リソースの消費はプログラム関係をする限り避けられません。
ちなみにシステム設定ユーティリティーの説明はWinFAQをご覧下さい。
「リソース」で検索すればリソースって・・・?な感じでヒットすると思います。
因みに作者はXPに切り替えました。