##はじめに
1ブック内に複数シートがある状態で、同じ処理を行いたい。
これに関してはすべてを選択済みにし、1シートで処理を行えばというのはわかりますが、
一部データによる行数の違いなどもあり、削除等をする際にどうしてもその方法ではうまくいかないため、
シートを切り替えながら同じ処理を1シートごと行いたいと思っています。
##現在のコード
VBA
1Sub TestMethod() 2 //すべてのシートを選択した上で処理していく方法にしてみました。 3 For Each sh In ActiveWindow.SelectedSheets 4 //今のシートが何か表示させてみました。 5 MsgBox sh.Name 6 //共通処理としてF列を削除しました。 7 sh.Range("F:F").Delete 8 Next 9End Sub
次にF列を削除したあとは特定のセルに検索する値がある場合をの行を削除するというのを入れようと思って
VBA
1Sub TestMethod() 2 //すべてのシートを選択した上で処理していく方法にしてみました。 3 For Each sh In ActiveWindow.SelectedSheets 4 //今のシートが何か表示させてみました。 5 MsgBox sh.Name 6 //共通処理としてF列を削除しました。 7 sh.Range("F:F").Delete 8 9 For i = Range("A1").End(xlDown).Row To 2 Step -1 10 With Cells(i, "A") 11 If _ 12 .Value Like "合計*" Or _ 13 .Value Like "小計*" Then 14 .EntireRow.Delete 15 End If 16 End With 17 Next i 18 Next 19End Sub
このようにしたところ、現在全選択ではあるものの、開いているシートの部分だけはこの動きができて、他のシートは動かなかったのでですが、どこが原因でしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/20 02:43