マクロ★macro

わずかな知識で VBA!

macro
マクロ


マクロで何ができる?



  マクロ(macro)を使うといろいろなことができます。

   @ 繰り返し行う処理を自動化できます!

      Excelで仕事を行っている時の複数の処理を、
      1つのボタンを押すだけで自動的に実行させることができます。

      また、一度正確なマクロを作成してしまえば、
      間違いの原因は入力ミスだけとなります。
      
      操作ミスや、思い込みによる計算式の貼り付けミスなどを無くすことが
      できます。

   A 状況に応じて異なる処理もできます!

     もちろん、状況に応じた異なる処理や、状況判断は、あなたが作成時に
      決定したものになるのですが、

      マクロで一度作成してしまえば、あなたが二日酔いでも、Excelは完璧に
      こなします(笑)

わずかな知識で
VBA!





 

   B 独自のワークシート関数(ユーザー定義関数)が作成できます!

     Excelには使いこなせないほどの関数がありますが、
     それでも、関数を複雑に組合せなければできないという計算も必要になってきます。

     あとで検証する必要が生じた場合、「ここの計算式はどうなっていたっけ?」と

      マウスでそのセルを選択し計算式をチェックするわけですが、
     私の場合は、IF関数が3つ入れ子状態になっているだけで、ウンザリしてしまいます。


      マクロでは、こうなります。

           If 《条件1》 Then

             《処理1》

          Elseif 《条件2》 Then 

             《処理2》

          Else           《条件1》、《条件2》以外

             《処理3》    

          End if

       とっても分かり易くないですか?

       条件の数は限定されていません。条件の数だけ、「Elseif」で増やせます。


  C 自分独自のユーザーインターフェースを作成できます!

     ユーザーインターフェースとは、関越自動車道の湯沢インターの塀ではありません。

                                      (ユザワインターフェンスなんちって 失礼しました!)
  


  上は、私が作成したダイアログボックスで、Windowsのアプリケーションでよく見るものです。
  Excelではこれを「ユーザーフォーム」といい、ユーザーフォーム上には、テキストボックスや、コマンドボタンなどの
  「ActiveXコントロール」を配置することができます。


  このような、画面上の操作手段を「ユーザーインターフェース」と呼びますが、

  セルに直接データーを入力するのではなくて、
  ユーザーフォームとActiveXコントロールにより、あなたが作成したダイアログボックスにデーターを入力させ、
  そのデーターをマクロを使ってセルに転記するようにすれば、Excelの操作に不慣れ な人でも使用できますし、
  入力ミスや操作ミスも防げます。


   また、ユーザーフォームを表示する前に、既に入力されている項目を調べ、
  ユーザーフォームに表示させることもできます。

   どうですか、ワクワクしてきませんか?


  VBAで作成するマクロは、複雑で細かな作業を、簡単な操作で行わせることができます。

  しかし、その分、命令文を細かに記述する必要があります。

   多くのユーザーが「難しそう!」と感じるのはこの部分だと思いますが、

  実は、その内容は簡単な命令や、状況判断の繰返しなので、たいした知識を必要としません。
 

   当然ですが、作成したマクロで行えることは、プログラミングで記述した命令だけです。
  優秀な部下のように勝手に判断して、それ以外の処理を行ってくれることはありません(笑)

  しかし、一度出来たことは確実に行ってくれます。


  ただし、Excelにもバグがあり、なんらかの原因で、今までマクロでできていたことが、できなくなる時があります。
  その場合は、あきらめて「アプリケーションの自動修復」を実行しましょう。
 


  さて、「プログラム」を作るとなると、当然、ある程度の知識と経験が必要になってきます。
  「プログラムを作るのは難しい」と思っている方もいらっしゃるでしょうが、そんなことはないのです。


  難しいのは、誰もが簡単に扱えるプログラムを簡単に作ることで、こちらはプログラマーにまかせておきましょう。


   Excelにしても、Wordにしても、使いこなせないほどの機能を持っています。

  ですが、普段、皆さんはそれらの機能のごく一部だけを使用して日常の業務を行っているはずです。

  VBAプログラミングにおいてもそれでいいのです。

  決して、VBAの全てを、知っていなければいけないわけではありません。

  ちょっと勉強すれば、自分の知識の範囲内だけで十分役に立つマクロが作れます。

   ある作業を行うのに、プロは10行の命令文で書き、
  自分は、知識が足りないせいで、30行の命令文になったとしても、何の問題があるでしょうか?

  コンピューターでは、そのどちらの処理もあっという間です。
  普通、システムを作成する場合、ユーザーはシステム開発者に作成を依頼します。

   しかし、どんなに詳しくシステム開発者に説明をしても、
  どんなに緻密な設計書を何日も残業して作成しても、

       システム開発者に全て正確に伝わることは、まず、ありません。

  必ずと言っていいほど、ユーザーの要望との乖離が生じ、
  いつしか、お互いのことを陰で「タコ!」と呼ぶようになります(ウソです)


 
   自分の要求を満たすためには、自分でプログラミングする方が、
  より理想的なシステムができあがるのは言うまでもありません。

  もちろん、時間はかかりますが、お金はかかりません。きらいな人間も増やさずにすみます。

   システムを使う人と作る人が同一であれば、後々発生するカスタマイズにも手際よく対処することができます。


   「マクロの記録」を備えたExcel/VBAは、「簡単なソフトは自分で作成してみましょう!」と

  ユーザーに挑戦しているように思えます。

  
  繰り返しますが、VBAプログラミングは難しくありません。

  ある程度の知識と経験が必要で、それに知恵を加えて作成していきます。

 
  さあ、その、「ある程度の知識と経験」の習得を目指してガンバリましょう!!

        


  わずかな知識でVBA!       TOP

  マクロで何ができる?   ユーザーインターフェース    マクロの記録   マクロの登録
 
  イベントについて      マクロの編集とデバッグ    ゲームで覚えるVBAプログラミング
 
  オブジェクトの操作     セルの操作            MsgBox関数・InputBox関数
 
  変数の型           ヘルプの活用          イミディエイトウィンドウ  
 
  Withステートメント      Setステートメント
 
  条件分岐のステートメント   If Then Else,Select Case
 
  繰り返しのステートメント   Do Loop
 
  繰り返しのステートメント   For Next
  
  ダイアログボックスを作ってみよう1              ダイアログボックスを作ってみよう2 【実践編】
  
  ActiveXコントロール   各コントロールのプロパティ       文字列の操作        Endプロパティ

  リンク・検索   マイプロフィール       YouTubeの部屋 

Copyright (C) わずかな知識でVBA! All Rights Reserved