質問: excelのVBAで、シートを作成、シート名を設定という動作をさせています。for nextで必要な数のシートを 作成して、 シートの新規作成×10枚 新規作成"sheet1"→"個人情報1"に名称変更 新規作成"sheet2"→"個人情報2"に名称変更 ・・・・・・ 新規作成"sheet10"→"個人情報10"に名称変更 という動作をさせた場合、あと5枚足りないという場合、 次に作成されるシートの名称は、"sheet11"からになりますよね? この場合sheet1から名称変更する命令なので、一旦ファイルをとじて、もう一度開かなくてはなりません。 作業中に、新規作成するシート名をsheet1にリセット する方法は、ないものでしょうか? また、オートシェイブの"circle1"とかも できないもんでしょうか? 宜しくお願い致します。
回答: 現在ワークシート等を指定されるときに ( Worksheets("Sheet1") ) というような指定をしておられると思いますが、 その部分を Indexで指定されると良いと思います ( Worksheets(1) 記述で) そうすると11枚目のワークシートを追加した場合でも Worksheets(11) という記述で指定できます。