プロが教えるわが家の防犯対策術!

お世話になります。

複数シートに同じ表があります。
その表のセル(G7,H7) (I7,J7) (K7,L7)というように列が結合されている箇所に連番を振るにはどうしたらよいのでしょうか。
結合されるセルの数は(G8,H8) (I8,J8) (K8,L8)と番号を振る下に入るデータ数によって変わっていきます。

色々試してはいるのですがうまくいきません。
よろしくお願いします。

A 回答 (3件)

たとえば B2 ~ O10 の範囲に連番を振るなら次のように出来ます。

参考にどうぞ!
--------------------------------------------------------------------------
Sub test()
Dim 行 As Long
Dim 列 As Long
Dim 数 As Long
数 = 1
For 行 = 2 To 10
For 列 = 2 To 15
Cells(行, 列).Value = 数
If Cells(行, 列).Value = 数 Then 数 = 数 + 1
Next
Next
End Sub
--------------------------------------------------------------------------
連結されたセルは左上のセルにしか書き込みが出来ないことを利用しています。
    • good
    • 2

ANo2です。



失礼しました。VBAの質問だったようで。

すでに回答があるようですが、FOR ~ NEXTなどのループを利用することで比較的簡単にできると思います。
    • good
    • 0

こんにちは



内容がイマイチよくわかりませんが・・・
例えばセル(G7,H7) が結合されている場合は、値や式の設定はセルG7にされていると考えれば良いです。(セルH7は結合されたため見えなくなっていると考える)

それはともかくとして、
(G7,H7) (I7,J7) (K7,L7)・・・に連番を振りたいのなら、例えば(G7,H7)に「1」、(I7,J7)に「2」を入力して、両方のセルを選択した状態から、右方向にコピーフィルすれば、3、4、5・・・と連番が振られます。

あるいは、式で設定したいというのでしたら、
例えば、 (G7,H7) に =INT((COLUMN()-5)/2) などの式をいれた状態で、右方向にコピーフィルでも1、2、3・・・の連番となります。

スタートの番号や増加する量の調整は、上記の原理さえ理解できればご自身で調整可能と思います。
個数の制御もなさりたいのかも知れませんが、内容が不明なので省略。
    • good
    • 0

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