- ベストアンサー
コードの一部がよく解かりません。
下記>部分の使い方がよくわかりませんので教えて下さいませ。 なくても動作しますが、 ありますと ↓ 「実行時エラー'9' インデックスが有効範囲にありません。」 となりますので、>部分も使用して正常に動作するには、どのようにすればよろしいでしょうか? よろしくお願い致します。 ------------------ Sub ワークシートの追加() ' 新規シート1枚を追加 ' Sheets.Add after:=Worksheets(Worksheets.Count), Count:=1 MsgBox "ワークシートの最後の後ろに1枚のシートを追加しました。" > Sheets("ワークシート").Select End Sub ------------------
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>1、この部分の文字がいけないんでしょうか? そのブックには「ワークシート」という名前のシートはありますか? 無い場合は確実にエラーになります。 >2、また、この一行(>)は重要な役割があるのでしょうか? プログラムの内容によって違います。 新しいシートを追加すると、追加されたシートがアクティブになります。 別のシートをアクティブ(何らかの操作の対象)にしたい場合は、該当のコマンドが必要になります。
その他の回答 (2)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんばんは。 >>部分も使用して正常に動作するには、どのようにすればよろしいでしょうか? > Sheets("ワークシート").Select それは無理ですね。そんなシート名なんてありませんからね。 このようにすれば可能ですが。 Sheets.Add after:=Worksheets(Worksheets.Count) MsgBox "ワークシートの最後の後ろに1枚のシートを追加しました。" Sheets(Worksheets.Count).Select "ワークシート"っていうのが、一意なら、 Worksheets(Worksheets.Count).Name = "ワークシート" を加えればよいですが、もし、そうなら、一回きりです。
お礼
早速のご回答どうも有難うございました。 ご説明が、非常によくわかりました。
- hana-hana3
- ベストアンサー率31% (4940/15541)
Sheets("ワークシート").Activate Select の場合使い方によっては失敗するので、 Activate にしてください。
補足
早速、どうも有難うございます。 実行して見ましたが、結果が同じですが、 "ワークシート" 1、この部分の文字がいけないんでしょうか? 2、また、この一行(>)は重要な役割があるのでしょうか? よろしくお願い致します。
お礼
納得致しました。 「ワークシート」という名前のシートはありませんでした。 どうも有難うございました。