2007-08-17 10:21:01

ACCESS VBA講座(1) VBAってなーに?

テーマ:プログラミング - VBA
私の知人に、EXCELやACCESSを駆使して仕事をする人がいます。その人は時々突発的な仕事を頼まれて、いろいろ思案した結果、答えが見つからず私に相談してくるのですが、たいがいはVBAを使わないと厳しいものです。

昨日も、「横長の(列がたくさんある)EXCELシートを、規則に則って縦長の(行がたくさんある)シートに置き換える」みたいなテクニックを相談されました。

EXCELやACCESSでもそれなりの処理はできますが、やはりVBAを覚えているといないのでは、イザという時の即応性が違ってきます。そんな経験をした方も多いのではないでしょうか?

そういった背景もあって、この度このブログでも「VBA講座」と銘打ち、ややこしい解説はつけずに、「ありがちな例題と解説」っぽいテイストで記事を書いていこうと思います。皆さんもステップアップのために、この機会にVBAを覚えてみてはいかがでしょうか。なお、主にACCESS VBAを取り上げますのでご了承下さい。

まず今回は、「VBAとは何か?」から始めたいと思います。

「VBA」はプログラム言語の1つです。正式には「Visual Basic for Applications」の略。マイクロソフトのOffice製品にくっついてきますので、実は眠れる獅子のような存在です。「プログラミングを勉強したい」という人にとってはすぐに作って動かせるものなので、格好の勉強用言語と言えるでしょう。

「なんかマクロっぽい」という方も多いと思いますが、似て非なるものです。似てる点は「処理を自動化できる」ということ。非なる点は「自由度・応用度・細かさが圧倒的に大きい」こと。大げさに言えば、「VBAを使えば何でもできる」んじゃないでしょうかね。

「じゃあ、Visual Basicとはどう違うの?」というあなた、結構エキスパートですね?(笑)

「Visual Basic」というのは同じマイクロソフトの製品で、通称「VB」などと略されますが、VBの場合はそれでプログラムを作れば単体で動作するというメリットがあります。言い換えれば、拡張子「exe」のプログラムを作ることができ、Windowsさえあれば他の人に渡しても動作するってことです。勿論、Officeいらずで動きます。

逆に「VBA」の場合、VBAを動かすためのソフト(例:ExcelやAccessなどのOffice製品)が必要で、それが起動された状態で動かさねばならないのです。言い換えれば、Officeを持っていない人にVBAのプログラムを渡しても全く意味を成さないのです。

で、「VBA」が「Visual Basic なんちゃら」の略だということで分かるとおり、プログラムの文法が似ているのです。「VB」から派生したのが「VBA」という風に考えて下さい。「VB」で本格的にプログラミングをするにあたって、「VBA」を理解してれば有利ってことですね。

ということで、分かったような分からないような感じでしょうかね。おさらいします。

・「VBA」はマイクロソフトのOfficeに付いている
・「VBA」はOffice上で動くプログラム言語
・「VBA」でプログラムを作ると、いろんなことができて便利

私が思う特に便利な使い方としては

1.自前の関数を作ることができる(例えば、電話番号のハイフンを一発で取り除く)
2.テーブルAをこねくりまわして、テーブルBに書き込む(例えば、複数のフィールドに書かれているデータを、複数のレコードに化かす)

といったことでしょうか。主にこの2つに大別されると言っても過言ではありません。

ですので、次回からはこの2つをそれぞれ例示していきたいと思います。
AD
いいね!した人  |  コメント(1)  |  リブログ(0)

AD

ブログをはじめる

たくさんの芸能人・有名人が
書いているAmebaブログを
無料で簡単にはじめることができます。

公式トップブロガーへ応募

多くの方にご紹介したいブログを
執筆する方を「公式トップブロガー」
として認定しております。

芸能人・有名人ブログを開設

Amebaブログでは、芸能人・有名人ブログを
ご希望される著名人の方/事務所様を
随時募集しております。