●トップページ    ●パソコン能力評価試験

ExcelVBAへの道
 
エクセルでプログラミングする方法には
1、マクロを使う。
2、VBAを使う。
    (VBAにはフォーム上にオブジェクトを乗せる方法とシート上にオブジェクトを乗せる方法の2通りがあります。)
上記2つの方法があります。

第1章 マクロとVBA
1.VBA
表計算ソフト「エクセル」のプログラミング機能=VBA

VBAとは、Visual Basic for Apricationの略称です。開発販売元のマイクロソフト社がアプリケーション開発学習ソフトVisual Basicを基本にOfficeシリーズ(Excel,Word,Access,PowerPoint)にVBのプログラミング機能の一部を組み込んだものです。
VBのようにWindowsアプリケーションを開発できるものではなく、あくまでエクセルの表計算機能をベースにしているので、エクセルソフトなしで動作するものではありません。
つまり、エクセルVBAで作成したソフトはエクセルがインストールされていないコンピュータでは動きません。
VBのように独立してソフトが動作するものではないのです。

筆者の感覚ではVBの機能の6割程度の機能がエクセルのVBAに組み込まれているような気がします。
VBとVBAとの関係を図で示すと下のような関係になります。


フォーム
  • フォーム部分とコード部分の2つから構成されている。
    フォーム部分は実行時に見れる部分でコード部分は目には見えない部分とも言えます。
     
  • フォーム(Form)と呼ばれるものの上に各種のオブジェクト(部品)を配置したもの。
     
     
    コード
    フォーム上のオブジェクトの動作によりコードが実行される。
    VBのコードと書き方は同じです。マクロで自動的に作成されるコードとも同じ。
    フォーム上のオブジェクト(部品)をダブルクリックすると自動的にコード名が作成される。
    1. 大文字小文字を意識しないで書ける。
    2. 行の最後に;などを付ける事は不要。
    3. Sub コード名()  End Subの間に実行コードを書く。
     
    シート
  • シート上にツールボックスのオブジェクト(部品)を配置して、コードである特定の動作を実行させることもできる。
       コードは各シートのコードウィンドウに書く。
        VBと同じコード。
・マクロで記録して自動化したソフトを作成
       ↓
  マクロだけではできないことをVBAを使用して作成する。

マクロで記録できないこと
  1. 条件分岐 If    then
  2. 繰り返し  Do   Loop
  3. カウント  n=n+1