[[20170503013803]] 『マクロでシートをコピーしシート名を連番にしたい』(がーひ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロでシートをコピーしシート名を連番にしたいです。』(がーひ)

エクセルの初心者です。
請求書をエクセルで作ろうとしているのですが、
上司にシート名を「017-001」から連番にして作れと言われております。
しかも、テンプレートをコピーしたものを連番にして、なおかつ請求番号というシートにもその連番を反映させろと言われております。
正直、手打ちでは工数がかかるためマクロ使いたいのですが、いろいろ調べてやってもうまくできません…
どなたか、お教えしてもっらってもよろしいでしょうか?
すみませんが、よろしくお願い致します。

< 使用 Excel:Excel2013、使用 OS:Windows10 >


 ワークシートタブを右クリックして、「移動またはコピー」を実行して、
 ワークシートの最後にコピーする動作をマクロ記録すると、
 こんなコードが記録された。
 Sub Macro1()
     Sheets("Sheet1").Select
     Sheets("Sheet1").Copy After:=Sheets(3)
     Sheets("Sheet1 (2)").Select
     Sheets("Sheet1 (2)").Name = "017-001"
 End Sub

 これを利用すると、こんな風に書けそう。
 Sub test()
     Dim k As Long

     For k = 1 To 3   '3は例ね。
         Sheets("template").Copy After:=Sheets(Sheets.Count)
         ActiveSheet.Name = "017" & "-" & Format(k, "000")
     Next
 End Sub

 >請求番号というシートにもその連番を反映させろ
 連番を反映させろ、ってもっと具体的に書けないのかな。
 ああ、そうか。それはこれから君がやるからいいってことか。

(γ) 2017/05/03(水) 05:30


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.