SpecialCells(xlCellTypeBlanks) VBA 関数が Excel で想定どおりに機能しない
現象
次のような VBA 式を使用する Microsoft Excel ブック内の複数の連続しない範囲を選択する Microsoft Visual Basic for Applications (VBA) マクロを作成すると、連続しないセルでのみ発生するはずのアクションが、ワークシート上の元の選択範囲のすべてのセルに対して発生します。
expression.SpecialCells(XlCellType).expression XlCellType
は、次のいずれかになります。
- xlCellTypeAllFormatConditions
- xlCellTypeAllValidation
- xlCellTypeBlanks
- xlCellTypeComments
- xlCellTypeConstants
- xlCellTypeFormulas
- xlCellTypeSameFormatConditions
- xlCellTypeSameValidation
- xlCellTypeVisible
原因
この動作は、マクロで 8,192 個を超える連続しないセルを選択した場合に発生します。 Excel では、VBA マクロを介して最大 8,192 個の連続しないセルのみがサポートされます。
通常、8,192 個を超える連続しないセルを手動で選択しようとすると、次のエラー メッセージが表示されます。
選択範囲が大きすぎます。
ただし、VBA マクロを使用して同じまたは同様の選択を行うと、エラー メッセージは発生せず、エラー ハンドラーを介してキャプチャできるエラー コードは生成されません。
回避策
この動作を回避するには、VBA マクロでループ構造を作成し、最大 8,192 セル未満を処理します。
状態
この動作は仕様です。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示