マクロ内の可視セルの選択(Microsoft Excel)
Karthiは、選択範囲内の表示されているセルだけを選択するために、Go ToSpecialを使用する必要があることが多いと述べています。これは、そのようなセルをマクロで選択できる方法があるかどうか彼に疑問を投げかけます。
マクロなしで表示されているセルだけを選択する方法はたくさんありますが、ここでは説明しません。作成する可能性のあるより大きなマクロの一部として、表示されているセルを選択することを前提としています。たとえば、ある種の書式設定を行う前、または他の方法でセルを処理する前に、表示されているセルを選択する必要がある場合があります。
選択したセルの範囲から表示されているセルだけを選択するには、次のコード行を使用できます。
Selection.SpecialCells(xlCellTypeVisible).Select
それらのセルの表示されているサブセットを選択する前に、他の初期範囲のセルで作業する必要がある場合は、行の「選択」部分を変更するだけです。たとえば、次の行を使用して、ワークシートの使用範囲内の表示セルを選択できます。
ActiveSheet.UsedRange.SpecialCells(xlCellTypeVisible).Select
同様に、次の行を使用して、ワークシート全体で表示されているすべてのセルを選択できます。
Cells.SpecialCells(xlCellTypeVisible).Select
これまでに説明した手法では、画面外にある場合でも、表示されているすべてのセルを選択することに注意してください。つまり、この手法では、ワークシート内の非表示になっていないセルを選択します。現時点で画面に表示されている非表示のセルのみを本当に選択したい場合は、別の手法を使用できます。
Intersect(MyRange, ActiveWindow.VisibleRange).SpecialCells(xlCellTypeVisible)
コードは、特定の範囲(この場合は「MyRange」)がアクティブウィンドウ内のセルの表示範囲と交差するセルのみを選択することから始まります。これらのセルは、SpecialCellsコレクションを使用してさらに選別され、非表示でないセルのみが使用されるようにします。
注:
このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
link:/ excelribbon-ExcelTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]
。
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(8524)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。
link:/ excel-Selecting_Visible_Cells_in_a_Macro [マクロ内の可視セルの選択]
。