|
いつもお世話になっております。
本日も難問に当ってしまった為、投稿させていただきました。
以下の条件を含む連番を振り直すマクロを作りたいと思っています。
▼条件
1. 途中でコピーによって行が追加された場合
1. 連番を振り直すのは1列のみ
2. 特定のセルには番号を振らない
・空白セル
・グレイのセル
・見出しが入ったセル
<参考>
A B C
1 ◎見出し
2 1
3 2
4 3
5 4
6 ※グレイのセル
7 5
8 6
9 ※空白セル
10 7
▽以下までは作ることができました。
・連番が既にセルに入力されている時、セル・行を削除すると連番を振りなおす。
Sub Test()
Dim f As Long
Dim Lrow As Long
Dim myNo() As Long
With Worksheets("Sheet1")
Lrow = .Range("A" & CStr(Rows.Count)).End(xlUp).Row
If Lrow = 1 Then Exit Sub
ReDim myNo(1 To Lrow, 1 To 1)
For f = 1 To Lrow
myNo(f, 1) = f
Next
.Range("A2:A" & CStr(Lrow)).Value = myNo
End With
End Sub
ここから上記条件を含めてカスタマイズしたいと思います。
特定のセルを飛ばす(対象から外す)場合、はどのような書き方がよろしいでしょうか?
"見出しが入ったセル"はあまりにも条件として漠然としている為、
あらかじめフォーマットを統一したほうがいいでしょうか?(たとえば頭に”▼”や”◎”をつけるなど)
ご教授お願いいたします。
|
|