アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルのシートで、フィルタでデータを選択して、データが0件の場合印刷しないマクロはどのような記述ですか

A 回答 (2件)

(例データ)A1:B7


値1値2
asas
dfdf1
ghghs
hjhj
ghghs
opsss
(条件)A10:B11
値1値2
ghghs
(コード)
Sub test01()
Range(Cells(1, "A"), Cells(7, "B")).AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=Range(Cells(10, "A"), Cells(11, "B")), _
CopyToRange:=Range(Cells(13, "A"), Cells(20, "B")), _
Unique:=False
If Cells(14, "A") = "" And Cells(14, "B") = "" Then
MsgBox "該当なし"
Else
MsgBox "該当あり"
'Range(Cells(10, "A"), Cells(20, "A")).PrintOut
End If
End Sub
(結果)A13:B15に
値1値2
ghghs
ghghs
範囲指定は実際の場合、適当に修正してください。
結果、「該当あり・なしのサイン」や「件数を返す」と言うのはないようなので、答えがセットされるべきセルの値ををチェックするより他ないのではと言うのが結論です。
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2004/10/08 06:40

フィルタ処理実行後に対象列を調べて、最終データ行=タイトル行なら実行しないとか、、、



例)1行目がタイトル行で、A列でオートフィルタを実行した場合

Sub test()
 '何らかのフィルタ処理
 If Activesheet.Range("A65536").End(xlUp).Row = 1 Then Exit Sub
 MsgBox "OK"
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2004/10/08 06:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!