- 締切済み
エクセル シート追加時にセルに自動連番を入力。
エクセルで顧客リストを作成しています。 シートを追加する方法でページを増やしていこうと考えて いるのですが、シートを追加すると会員No.と設けたセルに 自動で番号が連番で入力されるように設定したいです。 スタートの番号は00100から始めたいのですが。 宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- redfox63
- ベストアンサー率71% (1325/1856)
ThisWorkbookモジュールに Private Sub Workbook_NewSheet(ByVal Sh As Object) With Sh Dim r As Range, n As Integer, st As Integer ' 会員番号を記入する先頭セルに修正 Set r = Range("A2") ' 会員番号初期値の設定 st = InputBox("開始番号は?", , 100) ' とりあえず00100から00200までを出力 ' 適宜修正してください For n = 0 To 100 ' セルの書式を文字列に右寄せに r.NumberFormat = "@" r.HorizontalAlignment = xlRight ' 会員番号の文字列を生成 r.Value = Right("0000" & st + n, 5) ' 次の行を設定 Set r = r.Offset(1) Next End With End Sub といった具合でしょう
- redowl
- ベストアンサー率43% (2140/4926)
>自動で番号が連番で入力 何から何まで自動という考え方ではなく、最小手数で実現させたい。 同じような作業の繰り返しなので,これを効率よく行えれば,時間節約と入力ミスを軽減出来る。 ので、これを可能にする方法を知りたい。 ということでは? まず、 1シートあたり,最大何件の番号を割り当てるのかが 不明。 少なくとも,スタート番号をセルに入力する必要が有ります。 かつ,シート名も そのスタート番号 につけ直す。 これらを,マクロを組んでボタンにして,クリックすれば完了。 という具合。 色々な考え方が出来るので・・・ もう少し具体的に書かれた方が。