ここから本文です

先日通し番号を入れる命令文を教えて頂きました。

uid********さん

2017/6/2208:21:18

先日通し番号を入れる命令文を教えて頂きました。

Dim i As Long, j As Long
Dim Lrow As Long
Dim r As Worksheet

For Each r In Worksheets
Lrow = r.Range("B" & Rows.Count).End(xlUp).Row
j = 1
For i = 2 To Lrow
If r.Cells(i, 2) <> "" And r.Cells(i, 1) = "" Then
r.Cells(i, 1) = j
j = j + 1
End If
Next
Next
25のデータを作り上の命令文を実行すると1から25までの通し番号が付き、ありがたく使わせて頂いていたのですが、一度ブックを閉じ再度ブックを開いてデータを追加すると、通し番号が26ではなく1から始まってしまいます。
新たにブックを開いた時、直上(例えば26)の数字+1(27)から始まる命令文がありましたら教えて下さい。

閲覧数:
34
回答数:
2
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

hig********さん

2017/6/2208:45:08

jの初期値を1から現状最大値に変えればいいです。

変更前
j=1
変更後
j=application.max(range(cells(2,1), cells(Lrow,1)))+1

質問した人からのコメント

2017/6/22 09:43:50

ありがとうございました。
できました。できました。できました。

他の回答者の方にも感謝します。

ベストアンサー以外の回答

1〜1件/1件中

meg********さん

2017/6/2209:17:28

>For i = 2 To Lrow
>r.Cells(i, 1) = j

である以上、仮にデータを追加しても1からまた振り直し、25・26と
繋がっていくはずではないかな。
途中の行から1になるようなものではないよ。

いったいどんな作業をしたのか、きちんと説明が必要かもね。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる