家のPCでまたNTLDR is missingが出た・・・
それはともかく、accessでレコードを任意の数追加するフォームを作っていたら
レコードに振っている番号を「オートナンバー」にする必要が出てきた。
オートナンバーだと消した物まで数として残してしまうのでDmax等を使って工夫していたのだが、
ここに来てそれがあだとなった。仕方なくエクセルを使って「数値」→「オートナンバー」への入れ替え作業開始。
ちょうど他の方が作成したマクロが使用できた。
それにしても何でこのブログはコピペ時に改行を反映してくれないのだろう。
Sub my_insert()
Dim oCurrentRow As Range '数値を読み取る行
Dim oNextRow As Range '次の行(この行の上に数値分の行を挿入)
Dim lInsertRows As Long '挿入する行数
Dim i As Long 'ループ変数
'初期値の設定
Set oCurrentRow = Rows(1)
Set oNextRow = Rows(2)
'A列の値がなくなるまでループ
Do Until oCurrentRow.Cells(1.1).Value = ""
'挿入する行数を読み取る。
lInsertRows = oCurrentRow.Cells(1, 1).Value
'挿入がある場合、行数分だけ挿入を繰り返す。
If lInsertRows > 0 Then
For i = 1 To lInsertRows
oNextRow.Insert Shift:=xlDown
Next
End If
'処理する行を設定しなおす。
Set oCurrentRow = oNextRow
Set oNextRow = oCurrentRow.Offset(1, 0)
Loop
End Sub