tech34.com
メインページ
最終更新:2013/04/20
お知らせ
表示画像が小さすぎる場合は、ウィンドウの横幅を広げると、最大で原寸大まで拡大されます。(または画像をクリック)
Internet Explorer 6 では、画像がウィンドウの横幅まで拡大表示されます。
機能メニュー
ダウンロード販売(Shop)
公開中
ブログ(blog.)
公開中
掲示板(BBS)
公開中
マクロ(VBA)の基礎知識
マクロで出来ること
公開中
実行するための準備
公開中
開発するための準備
公開中
開発に必要な予備知識
公開中
開発テクニック
公開中
各種テクニック
PC操作
追加中
Microsoft Excel
追加中
Microsoft Access
追加中
Adobe PhotoShop
追加中
SEO関連
追加中
ネット収入関連
追加中
未分類
追加中
個別メニュー
社内SE 関連
公開中
当サイトの実装について
公開中
ホーム
⇒ マクロ(VBA)の開発に必要な予備知識
用語と基本操作
用語
プロシージャ
マクロの実行単位で、命令を記述する先です。
種類に「Sub:サブルーチン」と「Function:関数」があります。
(詳細は後半の「プロシージャについて」をご覧下さい。)
オブジェクト
・モジュール
プロシージャを格納する先です。
モジュールには「クラスモジュール」と「標準モジュール」があります。
(詳細は後半の「オブジェクトとモジュールについて」をご覧下さい。)
ソースコード
単に「ソース」や「コード」とも言われます。
一つのオブジェクト・モジュールに格納された全ての記述を
1ソースコードと考えればよいです。
コーディング
ソースコードを記述する作業のことをコーディングと呼びます。
アプリケーション画面
ExcelやWordの通常の作業画面です。
VB画面
開発を行うための画面です。
VB画面の開き方
アプリケーション画面から、VB画面を開くには、バージョン共通で「Alt + F11」となりますが、
以下にメニューからの開き方も載せておきます。
Excel,Word の 2007,2010,2013 : 開発タブの「Visual Basic」より
Excel,Word の 2003 : メニューの「ツール」⇒「マクロ」⇒「Visual Basic Editor」より
ソースコードの表示方法
VB画面でソースコードを表示するには、バージョン共通で「F7」となりますが、
選択されていたオブジェクト・モジュールのソースコードが表示されますので、
目的のものがあれば最初に選択しておきます。
オブジェクト・モジュールに対してダブルクリックや、右クリックから「コードの表示」等も利用できます。
●Excel で、Sheet1 のソースコードを開いた状態。
●Word で、ThisDocument のソースコードを開いた状態。
プロシージャについて
命令を実行する単位としてプロシージャというものが用意されています。
なにかを実行させたければ、まずプロシージャを用意して、その中に命令を記述し、
プロシージャに対して実行を命じます。
これにより、プロシージャ内の命令が全て実行され、プロシージャの最後にたどり着くと
実行が終了する仕組みとなっています。
プロシージャの中からは、他のプロシージャを呼び出すことができ、
小さなプロシージャをつなぎ合わせて複雑な処理を行わせることが出来ます。
プロシージャの作成には、ソースコードが表示されている状態で、
以下の画面のようにプロシージャの挿入を選択します。
「プロシージャの追加」画面が開きますので、必要事項を記入し「OK」ボタンを押します。
「名前」には日本語も使えますので、あとから見てどのような処理をしているのか
わかるように命名しましょう。
「種類」は、Subがサブルーチン、Functionが関数を表していますが、関数は戻り値が必要なので、
最初はサブルーチンを利用するとよいです。
(Property はクラスを意識した開発での利用なので最初は無視してよいです。)
「適用範囲」は、Public が公開、Private が非公開で、他のオブジェクト等から
参照できるかどうかを示します。
(個人的な開発であれば、全て Public で問題ありません。)
最後の「すべてのローカル変数を Static にする」もクラスを意識した開発用なので
無視しましょう。(チェックしない)
自動入力された「Public Sub」〜「End Sub」の間にコーディングを行っていくことになります。
(自動入力された内容は、全て自身で手入力しても、結果は同じです。)
実行方法
作成したプロシージャに対しての実行方法もいくつか存在しますが、
汎用性の高いものを、VB画面とアプリケーション画面のそれぞれで紹介します。
まず、VB画面から即座に実行したい場合の方法として、実行したいプロシージャの中に
カーソルがある状態で、メニューに並んでいる緑の三角を押すか、「F5」キーを押すことにより、
カーソルが置かれていたプロシージャの内容が直ちに実行される、というものがあります。
次はアプリケーション画面ですが、2007,2010,2013 は開発タブにある「マクロ」を選ぶと、
プロシージャを選択する画面が開きますので、実行したいものを選んで「実行」ボタンを押します。
(2003 の場合はメニューの「ツール」⇒「マクロ」⇒「マクロ」よりプロシージャの選択画面が開きます。)
ただ、アプリケーション画面から何度も実行するのであれば、ボタンを張り付けて、
ボタンのクリックイベントから実行されるように設定した方が良いでしょう。
(ボタンからの実行については「
ダウンロード販売(Shop)
」にある「Excel K01(無料)」にて解説しています。)
オブジェクトとモジュールについて
オブジェクトとモジュールは、それほど意識しなくても、
開発可能なのですが、一応詳細を記しておきます。
どちらも複数のプロシージャ等で構成されたソースコードを格納する先になりますが、
単純にソースコードを格納するだけの機能が「標準モジュール」であり、
一つの目的のために、データや機能を保持しているのが「オブジェクト」になります。
(Excelのシートや、Wordのドキュメントもオブジェクトです。)
「クラスモジュール」というのは「オブジェクト」を作成するための型であり、
作成した「クラスモジュール」をもとに、実体を与えられたのが「オブジェクト」です。
そのため「オブジェクト」は既に機能を有しているわけですが、
命令を追加することで、動作を変化させたり、機能を追加したりすることが出来ます。
また、既存の「オブジェクト」以外で「オブジェクト」を作成したくなったら、
「クラスモジュール」から記述していかなくてはいけません。
(クラスの考え方は難しく、かなり高度な開発を行うまでは不要であるため、
当初は無視してしまってよいでしょう。)
最後に
予備知識としては上記程度で十分です。
あとは実際の構文や命令を習得し、それらを記述するだけです。
いろんなことに手を出すようになり、さらに知識が必要となったら、
その時には、何をどのように調べればいいのかも、身についていることでしょう。
前ページへ
次ページへ