[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『シートの削除』(白音)
シート(SheetMain)にボタン(btnStart)を配置し、
サブルーチンを呼び出しています。
Private Sub btnStart_Click()
ModuleMain.データ取得 End Sub
サブルーチンは以下のようなマクロを作っています。
ステップ実行していくと
worksheets(1).Delete の行を実行した後処理が終了します。
エラーは発生しません。
何が間違っているのですか?
Sub データ取得()
: :
While i <= Worksheets.Count If Worksheets(i) Is SheetMain Then i = i + 1 ElseIf Worksheets(i) Is SheetSub Then i = i + 1 Else Worksheets(i).Delete End If Wend
: :
End Sub
< 使用 Excel:Excel2016、使用 OS:Windows10 >
エラーは発生していないのですね?
SheetMain、SheetSub が何なのか示されてませんが、 これでエラーがでないということは、シートのオブジェクト名でしょうか?
SheetMain、SheetSubがシートのオブジェクトだとすると オブジェクト名がSheetMain、SheetSub以外のシートを全部削除するコードになっていますが、 >worksheets(1).Delete の行を実行した後処理が終了します。 終了したとき、他のシートは削除されていますか?
もし、ちゃんと削除されているなら、こういうことではないかと思います。
VBA ステップインモードF8を押すと一気に実行される https://answers.microsoft.com/ja-jp/msoffice/forum/all/vba/bb285825-0094-4921-8fcd-cb4f5aa80b91
確認してみてください。 (´・ω・`) 2022/11/28(月) 11:00:35
SheetMain、SheetSubはシート型の変数でもOKでしたね (´・ω・`) 2022/11/28(月) 11:30:19
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.