- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel2002のVBAでワークシートの挿入で疑問)
Excel2002のVBAでワークシートの挿入で疑問
このQ&Aのポイント
- VBAを使ってExcel2002でワークシートを挿入する方法について疑問があります。
- 上記のVBAコードを使ってワークシートを挿入すると、ワークシートが11枚になってしまいます。
- 勉強したばかりで理由がわからないので、どこが間違っているのか教えていただけませんか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Sub シート() Dim i As Integer i = Worksheets.Count Do Until i = 10 Sheets.Add i = i + 1 Loop End Sub これではどうでしょうか?もっとスマートな方法があるかもしれませんが・・・。
その他の回答 (2)
- komkoma
- ベストアンサー率33% (7/21)
回答No.3
たびたびすみません。下記のような方法もありますね。 Sub シート() Dim a As Integer a = 10 - Worksheets.Count Sheets.Add Count:=a End Sub
質問者
お礼
Count:=a がまだ理解できていないようですので、勉強しなおします。 本当にありがとうございました。
- komkoma
- ベストアンサー率33% (7/21)
回答No.1
For i = Worksheets.Count To 10 Step 1では、iが10になった直後に、もう一度Sheets.addを実行してしまうからですね。
質問者
補足
なるほどわかりました。 では、10という数字を使って、記述するにはどのようにすればよいでしょうか? お手数ですが、教えていただけませんか?よろしくお願いいたします。
お礼
ありがとうございます。 Do Until~Loop はちょうど勉強していたところでしたので、とっても役に立ちました。 本当にありがとうございました。