二行目」という検索で、このサイト・インストラクターのネタ帳へのアクセスが、ありました。Applications)のコードを探している方による検索でしょうか。[スポンサードリンク]アクティブセル領域内の2行目を取得・選択するサンプルマクロ以下のようなマクロで、B2セルを含むアクティブセル領域の2行目を選択できます。Sub例えば、B2:G7セルにデータが入力されていて、その回りがすべて空白セルだった場合、上記のマクロを実行すると、B2:G7というセル範囲の2行目であるB3:G3セルが選択されます。Rowsプロパティで上位のオブジェクト式を省略したときと省略しないときの違いRowsプロパティは、グローバルメンバーでもあるため、上位のオブジェクト式を指定しないで書くこともよくあり、その場合はアクティブなワークシート全体から特定の行を表すRangeオブジェクトを取得できます。Rows(2).Selectというコードであれば、アクティブなワークシートの2行目を選択できます。「Rows(2)」というオブジェクト式でアクティブなワークシートの2行目のセル全体を表すRangeオブジェクトを取得して、SelectメソッドでそのRangeを選択しているわけです。このRowsプロパティを利用する際に、上位のオブジェクト式を省略せずにRangeオブジェクトを返す式を書いた場合、その返されたRangeオブジェクトの中から、指定された行を表すRangeオブジェクトを取得できるのです。上記マクロの、Range("B2").CurrentRegionというオブジェクト式は、B2:G7セルを表すRangeオブジェクトを返します。このCurrentRegionプロパティで返されるRangeオブジェクトのRowsプロパティを使って、Range("B2").CurrentRegion.Rows(2)というオブジェクト式にすると、B2:G7セル内の2行目に該当するB3:G3セルを表すRangeオブジェクトが返されるのです。そのRangeオブジェクトを選択しているのが、上記マクロのRange("B2").CurrentRegion.Rows(2).Selectというコードです。アクティブセル領域内の3列目を取得・選択するサンプルマクロ列を表すRangeオブジェクトを取得・選択する場合も、考え方は同じです。以下のようなマクロで、B2セルを含むアクティブセル領域の3列目を選択できます。Sub列を表すRangeオブジェクトを取得するために、Columnsプロパティを使っているところだけが、先のRowsプロパティを使ったマクロと違っています。Columnsプロパティも、Rowsプロパティと同じく上位のオブジェクト式に、Rangeオブジェクトを取得する式を書いた場合は、その取得したRangeオブジェクトから、指定された列を表すRangeオブジェクトを返します。アクティブセル領域内の2行目3列目のセルを取得・選択するサンプルマクロ行や列ではなく、単独のセルを表すRangeオブジェクトを取得・選択する場合も、考え方は同じです。以下のようなマクロで、B2セルを含むアクティブセル領域の、2行目3列目のセルを選択できます。SubCellsプロパティも、Rowsプロパティ・Columnsプロパティと同じく上位のオブジェクト式に、Rangeオブジェクトを取得する式を指定した場合、指定されたセル範囲内の、Cellsプロパティの第1引数で指定された行・第2引数で指定された列で特定されるセルを表すRangeオブジェクトを返します。Officeの使い方などを紹介し続け(2012年頃からはVBA関連記事が多め)、毎日5万人の方にご覧いただいています。