2017.10.05みなさん、こんにちは。なかじ(@nakaji098)です。前回は、Endプロパティを使用して表の最終行を取得する方法をご紹介しました。今回は、Endプロパティを使って表の最終行番号を取得する方法をご紹介したいと思います。今回ご紹介するEndプロパティを使用することで、簡単に表の最終行を取得することができます。tonari-it.com2017.09.29空白行がある表や罫線を引かれている表など、CurrentRegionやUsedRangeプロパティを使ってもうまく範囲を取得できない場合などに、このEndプロパティを使用することで、表の最終行を取得することができました。今回は、前回から発展させて、Endプロパティで表全体の範囲を取得する方法をご紹介していきたいと思います。Endプロパティを使えば、簡単に表の最終行を取得することができるので、それを少し応用して、Endプロパティを使って表全体の範囲を取得する方法をご紹介します。表全体の範囲を取得する方法コードの簡素化まとめ連載目次:エクセルVBAでシートのセル範囲を簡単に取得する方法Endプロパティで表の最終行を取得する方法まずは、前回のおさらいからしていきたいと思います。Endプロパティは、データが入力されている範囲の終端セルを取得することできます。Rangeオブジェクト.End(Direction)引数(Direction)を指定することで、任意のセルから、どの方向の終端セルを取得するかを決めることができるのです。表の最終行を取得する方法を説明していきます。行番号の取得はRowプロパティを使います。Rangeオブジェクト.Rowそれでは、最後のセルから表の最終行番号を取得する方法です。この表を使って説明します。それでは実際のコードです。Subこれで、表の最終行番号できました。ここで使ったRows.Countは、シートの行数を取得します。シートの行数はExcel2007以降なら1048576、2003以前なら65536です。シートの最終行から、上方向に進んでいき、最初にデータが入力されているセルを指定します。この方法ならば、空白行がある表でも、データが入力されている最終行番号を取得することができます。前回は、最初の行(A1セル)から表の最終行を取得する方法も説明しましたが、今回はより実務でも使い勝手のよい、最後のセルから表の最終行番号を取得する方法を使って、この後の表全体の範囲を取得する方法を説明していきます。Endプロパティで表全体の範囲を取得する方法それでは、ここから今回のテーマである、Endプロパティで表全体の範囲を取得する方法について説明していきたいと思います。表の右下端のセルを取得する方法Endプロパティを使って表全体の範囲を取得するためには、表の右下端のセルを取得する必要があります。表の右下端のセルを取得するにはこのようなコードになります。SubD6セルを取得することができました。解説しますと、表のA列最終セル(A6セル)を取得し、そこから右方向の終端セルを取得しました。見てわかるように、Endプロパティは1つのコードの中で2回使えます。表全体の範囲を取得する方法それでは実際に表全体の範囲を取得します。Sub表全体の範囲が取得されました!でも、よくわかりませんね。いうことで、すこし解説したいと思います。Rangeオブジェクトで表の範囲を直接指定する方法です。Worksheetオブジェクト.Range(アドレス)Rangeプロパティの引数に表の範囲のアドレスを直接指定することで、表全体の範囲を選択できます。今回の場合ですと、こうなります。Subこのアドレスに指定するセルに、Endプロパティで取得セルを指定したものが今回の方法です。この場合ですと、D6セルに指定していたところを、Endプロパティを使ってセルを指定しました。この方法ならば、空白行がある表や、罫線が引かれている表であっても、データが入力されている表全体の範囲を取得することができます。コードの簡素化このコードでも問題はありませんが、やはり見にくいので、少しすっきりさせたコードに変えてみます。WithステートメントWithステートメントを使って読みやすくしてみます。Subこれで少し見やすくなりましたね。難しくなりますが、もっと見やすくすることもできます。取得した右下端のセルをRangeオブジェクト変数に格納する方法です。Sub解説しますと、変数lastCellに右下端のセルを格納します。変数lastCellを表の範囲のアドレスに指定します。このとき、オブジェクトを変数に格納するので、Setステートメント使う必要があります。まとめ今回は、Endプロパティで表全体の範囲を取得する方法についてご紹介しました。はじめに、前回ご紹介したEndプロパティを使用して表の最終行を取得する方法を説明しました。Endプロパティを使うことで、データが入力されている表の最終行を簡単に取得することができました。今回は、前回ご紹介した内容を発展させて、Endプロパティで表全体の範囲を取得する方法についてご紹介しました。この方法を使うことで、空白行がある表や罫線が引かれている表であっても、データが入力されている表全体の範囲を取得することができます。コードが複雑になり読みにくい場合は、Withステートメントや変数を使うことで、より見やすいコードに変えることもできます。連載目次:エクセルVBAでシートのセル範囲を簡単に取得する方法エクセルVBAでシート上のセル範囲を取得。本シリーズではシート上のデータがあるセル範囲を簡単に、そして上手に取得する方法をお伝えしていきます。プランノーツ代表、コミュニティ「ノンプロ研」主宰。ITで日本の『働く』の価値を上げる!」をテーマに、VBA&GASの開発、講師、執筆などをしております。→詳しいプロフィールはコチラ★ご依頼・ご相談はお気軽にどうぞ!→お問い合わせはコチラ★フォロー頂ければ嬉しいです。「コミュニティ+講座」形式で継続性&教え合える環境も提供。!ノンプログラマーがプログラミングスキルを身に着ける支援ををするコミュニティ。セミナー・もくもく会・Facebookグループのサポートで「自らで学び続ける力をつける」支援、「教え合うことで学びの価値を上げる」場の提供をしています。【エクセルVBA】VBEのツールバーを自分好みにカスタマイズする方法VBEにあるユーザー設定で、ユーザー好みのツールバーを作成する方法をご紹介しています。コメントアウトやコンパイルなど、よく使うコマンドをツールバーにセットして画面に表示しておけば、すぐに使えて便利ですよ。コマンドのショートカットキーを忘れてしまった!なんていうときも、ツールバーにセットしておけば安心です。2018.04.10Excel・VBA活用術エクセルVBAでテーブルを走査して取引先ごとのブックを作るマクロ請求書の作成マクロを題材に、エクセルVBAでテーブルを操作する方法をお伝えしています。今回は、テーブルを走査して取引先ごとにブックを作成して、請求書のひな形シートをコピーするマクロを紹介します。【エクセルVBA入門】オートフィルタや行の非表示で隠れている行を全て表示するエクセルVBAでバラバラの経費精算書のデータを収集するマクロの作り方をお伝えしています。今回はオートフィルタを解除する方法と、行の非表示で隠れている行を表示する方法についてそれぞれお伝えしていきます。【初心者向けエクセルVBA】行の数をカウントする&不要な行を隠す今回は行数をカウントする、行を隠す、などの「行を取り扱うテクニック」を紹介しています。いずれもデータや帳票を扱ったエクセルVBAではかなり重宝するテクニックですので、知っておいて損はありませんよ。2015.05.16Excel・VBA活用術カラム数を指定してBootstrapのグリッドシステムを使ったHTMLを生成するエクセルVBABoostrapを使ったHTMLコードをエクセルVBAで自動生成していきます。今回はカラム数を指定することで、グリッドシステムを使った部分のHTMLソースを生成するVBAプログラムを作っていきます。VBAのシリーズとして、請求書を作成するマクロの作り方についてお伝えしています。今回は、ワークブックをSaveAsメソッドで別名で保存し、Closeメソッドで閉じる方法をお伝えします。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント107セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント107セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。ご依頼・お見積などお気軽にどうぞ!お問い合わせフォーム新着記事GASでGoogleスライドのSlideオブジェクトの概要とその取得方法2020.01.162020.01.16【エクセルVBA】ユーザーフォームにコンボボックスを追加する方法2020.01.162020.01.16GASでGoogleスライドを操作するSlidesサービスの基礎の基礎2020.01.152020.01.16GASでGoogleスライドのプレゼンテーションを操作するはじめの一歩2020.01.142020.01.15GASのconsoleクラスのメソッドで実行時間をログ出力する方法2020.01.122020.01.12Facebookページいつも隣にitのお仕事タイトルとURLをコピーしました。