プロが教えるわが家の防犯対策術!

マクロの構文知識がないため、自動記録を利用して、データ処理をしています。自動記録の中の作業で、フィルターをかけて、300のものだけ表示するとしたときに、300のデータがあればマクロが最後まで実行されるのですが、300のデータがない場合、続きの処理が実行されずに止まってしまいます。解決方法がわからず、どなたか教えていただけますでしょうか。

質問者からの補足コメント

  • C列に300のデータがあれば、該当としています。

      補足日時:2021/04/22 00:04

A 回答 (3件)

こんにちは



情報が何も無いのに等しいので、「エラーを回避しなさい」としか言いようがありません。

いっそのこと、
 On Error Resume Next
の呪文でも入れておけば、とりあえず、エラーは出なくなると思いますけれど・・・
    • good
    • 0
この回答へのお礼

ありがとう

ご回答をいただきまして、ありがとうございます!
On Error Resume Nextを入れる場所を理解することから、マクロの構文を勉強していこうと思います!このように教えてくださる方がいることに、感謝です。本当にありがとうございました!

お礼日時:2021/04/23 23:38

300のデータがなく抽出しても何も表示されなくて『も』その後に何らかの処理が待ち構えていられるのですか?



いっそ

IF WorksheetFunction.CountIf(Range("C:C"), 300) >0 Then

' フィルタ実行

End If

'その後の処理

とかで事前にデータカウントを取得してみる?
    • good
    • 0
この回答へのお礼

ありがとう

そうなのです、その後にまだ他のシートでの作業など、自動記録で操作が残っているんです。マクロの知識がなく、せっかく教えていただいた内容にたどり着けなかったため、これからもっと勉強して、理解できるようになりたいと思いました!ご丁寧に教えてくださり、ありがとうございます!

お礼日時:2021/04/23 23:43

そのコードが分からないと説明が厳しいですね。


ここにコードを書き込むのは何か抵抗がありますか?

例えば1例ですが、現時点で次のようになっていた場合は、
If 300のデータがあった場合 Then
 '続きの処理
End If

次のように訂正する必要があります。
If 300のデータがあった場合 Then
'300のデータがあった場合の続きの処理
Else
'300のデータがなかった場合の続きの処理
End If
もしくは
If 300のデータがあった場合 Then
End If
'続きの処理(300のデータがあってもなくても実行する処理)
    • good
    • 0
この回答へのお礼

ありがとう

ご回答いただきまして、ありがとうございます!初めて投稿したもので、ご丁寧に回答をいただき、感動しました。お礼の入力方法がわからず、遅くなってしまいました。
マクロの構文をもう少し勉強してからではないと、頭が追いつかず、せっかくご回答いただいたのに、私の知識が少なすぎて、たどり着けず、申し訳ないです。でも、このように教えてくださる方がいることに、感謝です。本当にありがとうございました!これからもっと勉強していきます!

お礼日時:2021/04/23 23:36

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