以下のようなものを作成しましたが、1シートでは、問題なく回るものの2シート目のmをFINDしているところでエラーが発生します。原因は、該当するmが存在しないためだと思うのですが、そのような場合にエラーを回避し、次のシートへ飛びエラーが発生したシート番号を最後に表示してほしいです。
そのようなことは可能でしょうか?
読みにくいプログラムかもしれませんが、よろしくお願いします。
Dim top, m, under, bottom, cnt, she
Application.ScreenUpdating = False '画面固定
cnt = Sheets.Count 'シートの数
For she = 1 To cnt
Sheets(she).Activate
Columns("F:F").Select
Selection.Find(What:="0", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, MatchByte:=False, SearchFormat:=False).Activate
top = ActiveCell.Row - 1
Rows("1:" & Format(top)).Select
Selection.Delete Shift:=xlUp
Range("A1").Select
m = Range("E1") + 10
If m >= 60 Then
m = m - 60
Else
m = m
End If
Columns("E:E").Select
Selection.Find(What:=Format(m), After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, MatchByte:=False, SearchFormat:=False).Activate
under = ActiveCell.Row
bottom = Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row - 1
Rows(Format(under) & ":" & Format(bottom)).Select
Selection.Delete Shift:=xlUp
Range("A1").Select
Next she
End Sub
No.1ベストアンサー
- 回答日時:
以下のコードは参考になりませんか?
Sub Macro1()
Dim rg As Range
Set rg = Columns("F:F").Find(What:="0", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, MatchByte:=False, SearchFormat:=False)
If rg Is Nothing Then
MsgBox "ありませんでした"
Else
MsgBox rg.Row
End If
End Sub
この回答への補足
お礼の文章の後に、補足というのも変ですが。
Set rg = Columns("E:E").Find(m)
If rg Is Nothing Then
MsgBox "以下のシートには、該当行がありません。" & vbNewLine & ActiveSheet.Name
Else
under = rg.Row
bottom = Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row - 1
Rows(Format(under) & ":" & Format(bottom)).Select
Selection.Delete Shift:=xlUp
Range("A1").Select
End If
素直にFIND(検索したい数字)で通りました。
回答ありがとうございます。
自分のと同様に
Set rg = Columns("F:F").Find(What:="0", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, MatchByte:=False, SearchFormat:=False)
の部分が実行時エラー13と表示されうまくいきません。
Is Nothing というのは自分も見つけることができましたが、うまく回避できません。おわかりでしたら、よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
交通系icカードとクレカの磁気...
-
以前作ったエクセルファイルを...
-
画層プロパティ管理
-
どのようなランタイムを入れれ...
-
このサイトで無限リダイレクト...
-
「このURLはコンテンツブロッカ...
-
深刻なエラーで K7・・とは
-
VBAのFINDのエラーを回避したい...
-
REAPERでvstを大量に読み込むと...
-
富士通SystemwalkerOperationMa...
-
IE使用中、アプリケーションエ...
-
GIMPのロゴ効果 冷たい金属の...
-
Adobe Premiere Pro 2.0での「...
-
フリーソフトでエラーが出て困...
-
ラスタライズのエラー
-
SPSSでエクセルファイルが開け...
-
教えてください。 パソコンの用...
-
右クリックで画像コピー やば...
-
アンインストールしたプログラ...
-
縮小専用でResizedした写真の在...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
交通系icカードとクレカの磁気...
-
win10からwin11へのIME登録単語...
-
富士通SystemwalkerOperationMa...
-
インターナルエラー:GEDIT 3 ...
-
「このURLはコンテンツブロッカ...
-
みつも郎liteのファイルがエラ...
-
aviutlによるxvidエンコードで…
-
jimdoのHPが見られない
-
GOM-playerでスクリプトエラー...
-
REAPERでvstを大量に読み込むと...
-
Lotus Notes 終了時に表示され...
-
OpenClipboardに失敗しました(...
-
パソコンに着いての質問です。 ...
-
勘定奉行でのSQLエラー
-
「空吸引」を英語でなんと訳す...
-
リクエストの有効期限が切れま...
-
アルバムソフトが開けなくなり...
-
以前作ったエクセルファイルを...
-
重大なエラーが検出されました
-
ANSYS_ED エラーについて
おすすめ情報