pickup

 

クラスモジュールを、勉強するにあたり、サンプルがすくないですよね。

サンプルがあったとしても、とても長いコードですね。

なので、実務で利用できるサンプルを用意しました。

目次

スポンサーリンク

クラスモジュールで、最終列、最終行を取得

 

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

すっかり、クラスモジュールにハマっています。

最近、思うのですが、クラスモジュールは、設計図と言います。

 

しかし、以前に紹介した、辞書機能のように利用すると、とても便利です。

設計図とは、多分、システムの設計も、必要なのでしょう。

しかし、コードを書く人が、いかに楽ができるかというのも、込みで、設計図のような気がします。

 

Excelで、VBAを利用するからには、最終列、最終行の取得が必須スキルとなります。

 

初心者の頃は、本当の理解できませんでした。

 

当然、ループも理解できませんでした。

 

しかし、いつしか、コードを眺めていると、理解出るものです。

 

以前は、Functionで、最終行を取得するコードを紹介しました。

 

今回は、クラスモジュールで、最終行、最終列を取得します。

スポンサーリンク

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

 

今回のテーマ
  • Excelで、クラスモジュールを勉強している人
  • Excelで、最終行、最終列を取得したい人
  • クラスモジュールって何?って思っている人

 

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

このブログの結論
今回は、1番実務で利用するであろう、最終列、最終列を取得します。
クラスモジュールにそっと、忍ばせてください。
きっと便利に、効率的にコードを記載できます。
スポンサーリンク

最終行、最終列の取得

VBAを勉強して、最初の壁は、多分ココです。

ループの要素が絡み、1番下と、VBAで記載しなければなりません。

1番下って書けるのか?

最初は、そう思うはずです。

本当に、初心者の人は、ループを最初の覚えたほうが良いです。

しかし、クラスモジュールが、気になっている人は、今回の記事を、是非読んでください。

また、動画の方が、手品的要素もありますので、お時間があれば、動画も、ご視聴ください。

最終行、最終列の取得 作業手順 その1 通常のコード

上の図では、最終列⇒12 最終行⇒10

この値を取得します。

maxrow = Cells(Rows.Count, “A”).End(xlUp).Row

この書き方は、A列の1番最後⇒セルA12です。

maxColumns = Cells(1, Columns.Count).End(xlToLeft).Column

この書き方は、1行目の1番最後⇒セルJ1です。

Cells(Rows.Count, “A”).End(xlUp).Row

Cells(1, Columns.Count).End(xlToLeft).Column

このコードは、汎用性があります。

スポンサーリンク
この赤丸の部分に、工夫を加えると、もっと汎用性がアップします。

最終行、最終列を取得 作業手順 その2 クラスモジュールに記載

Aとか、1とかが、なくなりました。

maxR,maxC という関数を作成します。

このmaxR,maxCが、作り出すインスタンスは何か?

最終行を取得、最終列を取得、が、インスタンスになります。

そして、maxR,maxCが、活躍する場所は、ActiveSheetということになります。

最終行、最終列を取得 作業手順 その3 標準モジュールから、呼び出す

このコード実行すると、Msgboxに、最終列、最終行が表示されます。

maxR(1)⇒1列目

maxC(1)⇒1行目

 

コード自体は難しくないと思います。

最終行、最終列を取得 作業手順 その4 ループで遊んでみる

maxR(1)⇒1列目

maxC(1)⇒1行目

 

この(1)の数字の部分を、For~Nextのループさせたらどうなるか?

すべての画像は貼りませんが、最終的には、13番目を指定して、終了となります。

最終行、最終列を取得 作業手順 その5 手品的なことをやってみる

このように、最終行に、伊川直助を入れてみたいとします。

このコードを実行します。

こんなこともできます。

このコードを実行すると、元に戻ります。

ここがポイント

 

ここがポイント
Function8.png
クラスモジュールの説明が、難しく記載されているので、やる気がなくなると思います。
今回のコードも、クラスモジュールを含めて、15行くらいです。
いきなり、難しいものから勉強のするのではなく、カンタンなものから勉強しましょう。
今回のコードは、本当に、クラスモジュールに、仕込んでください。
最終行、最終列の取得がカンタンになります。
動画とブログでわかりやすくExcelとACCESSを紹介しています

まとめ

クラスモジュールのカンタンなコードの紹介でした。

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

どんな時に、どんなコードを利用するのか?

そのスキルも含めて、VBAのスキルです。

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

 

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

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

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

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

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

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

Twitterでフォローしよう

おすすめの記事