
No.3ベストアンサー
- 回答日時:
こんばんは。
以下のようにするのが一般的です。
Sub test1()
Dim sh As Worksheet
For Each sh In Worksheets
'数値のみ '文字を含むなら、CountA です。
If WorksheetFunction.Count(sh.Cells) > 0 Then
''sh.PrintOut '印刷
End If
Next
End Sub
No.2
- 回答日時:
何を対象で判断するのかが、はっきりとはわかりませんが・・・
それぞれのシートでUsedRangeあるいは、SpecialCells()などを利用してデータの有無を判定すればよいのでは?
例えば
sheet.cells.SpecialCells(xlCellTypeConstants, 23)
で、データ(数値、文字など)の入力されているRangeが返されます。
sheet.cells.SpecialCells(xlCellTypeFormulas, 23)
で、同様に式の入っているRangeを得ることが可能です。
(「編集」-「ジャンプ」-「セル選択」とほとんど同機能)
(Rnage.Countで対象セルの個数を得ることも可能です)
ただし、この方法の場合、該当セルがない場合はメソッドがエラーになるようですので、これを利用して判断すればよいかも。
UsedRangeは使用したレンジの範囲(矩形に変換)を返します。
こちらは、対象がない場合でも最低A1セルの1ヶ所が返されるようなので、個数だけでは単純に判断できません。
また、式や値をデリートしているセルでも(実際は何も入力されていない)、完全にクリアーされていないとカウントの対象になるようですので、注意が必要です。
(念のため、ForEachなどで各セルの内容をチェックする必要があるかもしれません。)
どのような判定をしたいのか不明ですので、質問者さんの使用状況に応じて選択してご利用ください。
それぞれの、詳細についてはヘルプなどを参照してください。
No.1
- 回答日時:
>データ(数値)が入っているワークシート
これはどのようにして判定しますか?
特定の行などにデータが入っているとデータがあると判定するのか、
シートでセルが一つでも使われていたらデータがあると判定できるのか?
はたまた別か?
などなど。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
日付が未入力の際はゼロか、空...
-
VBA セル間のリンク修正につい...
-
Excelでスクロールすると文字が...
-
エクセルで条件に一致したセル...
-
Excelの「0」だけ非表示、小数...
-
Excelのファイル容量が減らない...
-
エクセルで、加筆修正したセル...
-
エクセルで1月0日と表示される!!
-
Excel / 出納帳の繰越の仕方...
-
EXCELのハイパーリンクのセルを...
-
ワードからエクセルのシートに...
-
INDIRECT(空白や()がある文字列...
-
Excelにて、カタカナだけのセル...
-
エクセルのシート間で連続した...
-
エクセルで別シートからの最大...
-
エクセル ctrl+End いくら削...
-
エクセルのルビがついたセルを...
-
エクセルの文字
-
エクセルで複数のシートの同じ...
-
エクセルについての質問です・・・
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの「0」だけ非表示、小数...
-
VBA セル間のリンク修正につい...
-
エクセルで1月0日と表示される!!
-
日付が未入力の際はゼロか、空...
-
Office2021のエクセルで米国株...
-
Excelで複数シートの選択セルを...
-
Excelシートの保護時にデータの...
-
エクセルで条件に一致したセル...
-
エクセルで、加筆修正したセル...
-
Excelでスクロールすると文字が...
-
エクセルで複写のように自動入...
-
ExcelでTODAY関数を更新させな...
-
(Excel)あるセルに文字を入力...
-
複数シートの同じセル内容を1シ...
-
エクセルで指定のセルのみ完全...
-
エクセル ハイパーリンクで画像...
-
エクセルで複数のシートの同じ...
-
エクセルについて
-
EXCELのハイパーリンクのセルを...
-
エクセルで別シートからの最大...
おすすめ情報