• ベストアンサー

Excel挿入しても番号が自動加算される

早めにご返答戴ける方宜しくお願いします。 番号が振られているセルに挿入しても空白にならず、番号が自動加算されるやり方ってありますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • fmajin
  • ベストアンサー率61% (75/122)
回答No.2

挿入した行にも自動的に連番を振るというのであれば、マクロを組むしかありません。 その前に、次のことを確認させてください。 今回の件は、行を挿入すると、その行の連番が空白になり、その後の行の連番をふり直さなければならない。特に、連番をふり直すのが面倒とお感じならば、次のような方法はご存じでしょうか? 行を挿入すると、その行の連番は空白になりますね。そこで、その上の2つ分の連番のセルを選択してから、選択範囲右下に表示される「■」部分(フィルハンドル)を挿入した空白行までドラッグすると、空白行にも連番が埋め込まれますね。そうしたら、そのままフィルハンドルをダブルクリックしてみてください。すると、以降の連番が振り直されます。 的はずれだったら申し訳ないですが、ぜひ試してみてください。もし、この方法も面倒というのであれば、マクロを組むしかないでしょう。

その他の回答 (3)

  • TTak
  • ベストアンサー率52% (206/389)
回答No.4

#1です。 > 何の変哲も無いエクセルファイルに利用できるんですか? 利用できます。 > 全くの初心者です。宜しくお願いします。 初心者ということであれば、本来は、#2の方の回答が推奨されます。私も#2の方の方法をとります。 ですが、もし勉強もかねてということであれば以下のコードになります。 '---ここから Private Sub Worksheet_Calculate() AUTO_NUMBER End Sub Private Sub Worksheet_Change(ByVal Target As Range) AUTO_NUMBER End Sub Sub AUTO_NUMBER() Dim startRange As Range '連番振り開始セル Dim startNumber As Integer '連番開始番号 Dim numberMax As Integer '連番を振る行数の初期値 Set startRange = ActiveSheet.Range("A1") startRange.Value = 0 numberMax = 10 On Error GoTo ERRHAND Application.EnableEvents = False With startRange .Offset(1).Formula = "=" & startRange.Address(RowAbsolute:=False) & "+1" Range(.Offset(1).Address & ":" & .Offset(numberMax - 1).Address).FillDown End With ERRHAND: Application.EnableEvents = True End Sub '---ここまでコピー マクロの実行方法ですが、 1, Alt+F11キーを押します。 2, VisualBasicEditorが立ち上がりますので、左の方のプロジェクトエクスプローラのSheet1~ThisWorkbookの中で、マクロを実行したいシートをダブルクリックします。 4, コードウインドウが開くので上のマクロをコピー&ペースト。 3, VisualBasicEditorを閉じる。 また、マクロ実行前に、上記 Dim startRange As Range '連番振り開始セル Dim startNumber As Integer '連番開始番号 Dim numberMax As Integer '連番を振る行数の初期値 の下にある値"A1"や0や10などは適宜変更してください。 このマクロはExcel2000にて動作の確認をしていますが、実際に使用される場合は事故責任にてお願いします。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.3

#2の方の方法に似ていますが、これなら挿入した行だけコピーでできます。 =ROW() とするとその行数と同じ番号が自動でつきます。 2行目を1にする場合は、 =ROW()-1 として、下方にコピーしてください。 挿入すると下にずれたセルの行番号はずれた分加算されます。 直前のセルをコピーすれば挿入した行にも連番がつきます。

  • TTak
  • ベストアンサー率52% (206/389)
回答No.1

これは連番が振ってある列で、セルを挿入したら、そのセルに自動的に連番が振られ、それ以下のセルも自動的に番号が加算されるということでよろしいでしょうか。 「自動」とうことであれば、マクロが必要と思われます。「マクロでも良い」ということであれば、補足願います。コードを紹介します。

noname#29102
質問者

補足

はい教えてください! マクロってやった事が無いのですが。 何の変哲も無いエクセルファイルに利用できるんですか?全くの初心者です。宜しくお願いします。

関連するQ&A