最初は、動けばいいから始まるVBAです。

そこからコードの効率化を求めます。

Functionや、クラスモジュール、ループ等です。

今回は、一番カンタンなFunctionの説明をします。

スポンサーリンク

なんだ、カンタン 1番カンタンなFunctionの説明

 

こんにちは。伊川(@naonaoke)です。

 

以前に、VLOOKUP関数を、Functionを利用して実行しました。

しかし、私は、VLOOKUP関数が、大嫌いです。

 

VLOOKUP関数が、大好きであれば、チャネル登録1万人は、あり得なかったと思っています。

Index関数とMatch関数が、私を、一躍、スターダムに引き上げてくれました。

 

しかし、そこから、HIT動画もないので、まさに、一発屋です。

ねずみ先輩や、堀江淳さんと、同じ部類です。

 

なので、Index関数とMatch関数をFunctionで紹介しないと、伊川ではないと思いました。

今回は、Index関数とMatch関数をFunctionで実行します。

 

この動画で、Functionの疑問も解決できると思います。

何度も言いますが、合否判定や、消費税の計算だけが、Functionではありません。

スポンサーリンク

このブログはこんな人にお勧め

今回のテーマ
  • Excelで、VBAを勉強している人
  • VLOOKUP関数が、大嫌いな人
  • VLOOKUP関数とIF関数の組合せた、Excelを利用している人

このブログを、読み終わるころには・・・・

このブログの結論
Functionは、初心者の頃は、難しいと思っていたはずです。
確かに、Function内で、配列等を利用すると難しいのですが、
今回は、Excelに許されたWorksheetFunctionを利用します。
それほど難しくはありません。
スポンサーリンク

Functionを利用する面白さ

 

私が初心者のころ、複雑なFunctionプロシージャのコードを見て、書いている人は天才と思っていました。

多分、私は、その領域に絶対に到達できないと思っていました。

勉強しようと思っても、合否判定と、消費税の計算ばかり。

他の言葉で検索すると、異常に難しいFunctionの記載が・・・・・・・

えーい、面倒くせー、Functionなんて知らなくても、動けばいいと思ってはいけません。

これから、順に説明します。

きっと、なんだ、そんなことかと思うはずです。

Functionを利用する面白さ 作業手順 その1 データベース確認

スポンサーリンク
 

もちろん、VLOOKUPでもできます。

しかし、私は、Index関数とMatch関数の大ファンなので、VLOOKUPを利用しないで、Functionで表現します。

Functionを利用する面白さ 作業手順 その2 Functionで関数を記載できない

Naosuke

その気持ちわかります★

そうなんですよね。ここで、まず、躓きます。嫌になります。Functionなんでカンけーねぇと思います。

でもね。

WorksheetFunctionを利用すると、少しだけ理解できるようになります。

これが、本来、ワークシート関数で表現する、Index関数とMatch関数です。

では、この中に、引数は、何個あるでしょうか?

全部で4つあります。

この4つが、Functionの中に格納されます。

Function(1個目の引数  as 型,2個目の引数 as 型 , 3個目の引数 as 型, 4個目の引数 as 型)as Variant

このようになります。

Functionの中身は?

ATAI⇒B:B⇒Variant型

str⇒A:A⇒Variant型

rng⇒F:F⇒Range型

このように設定します。

ワークシート関数で表現する、Index関数とMatch関数を利用するとき、私は、すべて列で指定しています。

しかし、VBAで表現するときは、間違いです。

ATAIと、strは、結果的に列を指定しています。

Variant型にしたのは、検索するものが、数値が、文字型がわからないので、汎用性を持たせるために、Variant型にしています。

Functionを利用する面白さ 作業手順 その3 Index関数とMatch関数を記載する

Functionを利用する面白さ  作業手順 その4 親プロシージャに記載

ここのSubプロシージャで、範囲等をしていします。

えっ、コードに無駄が多いって?

スルドイです。

その通りです。ここは、ループで回しましょう。

Functionを利用する面白さ 作業手順 その5 ループを設定

これで完成です。

ここがポイント

 

ここがポイント
Function8.png
今回のコードや、ロジックは自慢できるものではないと思います。
でも、思い通りに動いてくれたので、これで良しとします。
大切なのは、ここで賢いと思ったつもりにならないことです。
ここが限界ではありません。
もっと、綺麗にコードが書けるまで、勉強は続くのです。
動画とブログでわかりやすくExcelとACCESSを紹介しています

まとめ

 

今回は、Index関数とMatch関数をFunctionで表現しました。

こんなコードは、まだまだです。

もっと勉強して、みなさんに有益な情報を提供したいと思います。

今回も最後まで読んでいただきありがとうございました。

 

 

今回のサンプルファイルは、No269です。

毎日の業務が、3時間短縮できます

わからない事を延々と考えるのは、無駄です。

  • なんで作動かないの?
  • もうやだ!VBAなんか嫌い!
  • ネットで調べても情報がない!

必ず作動するコードが、ここにあります。

初心者でも、すぐに、集計、プレゼンができるようになる。書籍だけの勉強は今すぐやめよう!
電子書籍で、AMAZON1位
専門のスタッフが、電話、チャットで完全サポート
大手パソコンスクールよりも、圧倒的な低価格
スポンサーリンク

Twitterでフォローしよう

おすすめの記事