dポイントプレゼントキャンペーン実施中!

教えていただきたいことがあります。
J列には不規則で文字列が入っていて、
K列には不規則に「1」が入っている表で、
K列の「1」の入っている下の空白セルには
それぞれに連番が入るようなマクロを作ることは可能でしょうか?

よろしくお願いいたします。

「Excelのマクロで不規則に連番を入れる」の質問画像

質問者からの補足コメント

  • ご回答いただき、ありがとうございます。
    非常に参考になります。

    『K列には不規則に「1」が~』は無視していただいてもけっこうです。
    J列に値がある行のK列には「1」、
    その下の空白セルには「2、3、・・」となる表が期待結果です。
    また、J6には必ず値がある表です。
    (画像を修正しました)

    すみません、あまりマクロに詳しくないものでして、
    教えていただいたものをコードにするとどうなるでしょうか?
    お手数をおかけしますが、よろしくお願いいたします。

    「Excelのマクロで不規則に連番を入れる」の補足画像1
    No.1の回答に寄せられた補足コメントです。 補足日時:2021/07/15 11:33

A 回答 (3件)

Sub Sample()


Range("K6:K22").ClearContents
rw = 6
If Range("J6") = "" Then rw = Range("J6").End(xlDown).Row
For r = rw To 22
If Cells(r, 10) = "" Then c = c + 1 Else c = 1
Cells(r, 11).Value = c
Next
End Sub
    • good
    • 0
この回答へのお礼

何度も回答いただきありがとうございました。
非常に助かりました。

お礼日時:2021/07/15 14:41

マクロでなくてもできます。

k列に(下記の場合k2セル)
=IF(j2<>"",1,k1+1)
です。すぐ左(j2)に何か入っていたら”1”、どうでなければすぐ上(K1)セルの値に1を加える。下にドラッグすればK列は完成です。
どうでしょうか。
    • good
    • 0
この回答へのお礼

ご回答いただき、ありがとうございます。
大変参考になりました。
今回はマクロで実施することが希望のため、
別の機会に利用させていただきます。

お礼日時:2021/07/15 14:40

こんにちは



>マクロを作ることは可能でしょうか?
>K列には不規則に「1」が入っている表で、
この条件の意味が不明なので、無視しても良いなら可能でしょう。

範囲が明示されていないけれど、6~22行限定とします。
1)準備処理として、K6:K22をクリア
  J6:J22の最初の空白でない行を .End(xlDown) などで求めておきます
  (必ずJ6に値がある保証があるなら、J6決め打ちで良いでしょう)
2)上記のstart行からJ22までを、以下の内容でループする
 ・その行のJ列が空白でなければcounterを1にセット
  空白の場合は、counterをインクリメント
 ・K列にcounterの値を設定

という、比較的簡単な処理で実現できると思います。

>K列には不規則に「1」が入っている表で
…というのに何か意味があるのなら、その分を修正するなどの必要があると思いますけれど。

>不規則に連番を入れる方法
規則的に考えてしまいましたけれど、「不規則」という意味がわかりません。
勘違いしていたならスルーしてください。
この回答への補足あり
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!