| 
    
     |  | おはようございます。 
 >自動番付の方法が分かりません。教えてください。
 >
 >   A    B
 >1  No  氏名
 >2  1   A
 >3  2   B
 >4  3   C
 >5  4   D
 >このようにA列に自動番号を付けるため、
 >Dim NewData As Long
 >New Data = Range("A65536".end(xlUp).Row + 1
 >Cells(NewData, 1) = NewData - 1 と
 >データ(氏名)を登録するたびに自動番付をつけていたのですが、氏名Cの行を削除(データの削除)してから再度データを登録するとNoが1,2,4,4と同番ができてしまいます。
 >行を削除しても同番ができないような方法がありましたらお教えください。
 >よろしくお願いします。
 
 最大値+1という値を登録してみては?
 
 Sub test()
 Dim rng As Range
 Set rng = Range("a1", Cells(Rows.Count, "a").End(xlUp))
 With rng
 .Cells(.Rows.Count + 1).Value = Application.Max(.Cells) + 1
 End With
 End Sub
 
 
 番号の振り直しという機能も必要かもしれませんが・・・。
 
 |  |