[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『空白セルを飛ばし連番』(くぼ)
空白セルを飛ばして連番(3つ続き)、またある数字だけ飛ばす方法を教えてください。可能であれば、1から10までいくとまた1からというようにしたいです。
例
1
1
1
2
2
2
3
3
3
5
5
5
このような感じで、上記例だと4を抜いています。例の数字の左セルにはデータが入っており、データがあるところだけに数字を振っていくという感じです。できれば関数で、難しければマクロでも構いません。よろしくお願いいたします。
< 使用 Excel:Excel2010、使用 OS:Windows7 >
マクロなら簡単なので、関数の回答がでなければ提示します。
(マナ) 2018/08/07(火) 20:32
A1セルからデータがあるとして。 =IF(A2="","",MID("012456789",MOD(INT((COUNTA(A$2:A2)-1)/3),9)+1,1)+1) ではどうか?
(ねむねむ) 2018/08/08(水) 09:16
すまない。 上記はA2セルからデータがある場合だった。 A1セルからの場合は =IF(A1="","",MID("012456789",MOD(INT((COUNTA(A$1:A1)-1)/3),9)+1,1)+1) で。 (ねむねむ) 2018/08/08(水) 09:18
なお、飛ばす番号を変更する場合は"012456789"部分で飛ばす番号-1を抜いてくれ。 (ねむねむ) 2018/08/08(水) 09:20
Sub A列にデータB列に連番()
Dim i As Long, x As Long, Xcount As Long x = 1 Xcount = 0 With ThisWorkbook.Sheets("Sheet1") For i = 2 To .Cells(Rows.Count, "A").End(xlUp).Row If .Cells(i, "A") <> "" Then .Cells(i, "B") = x Xcount = Xcount + 1 If Xcount = 3 Then If x = 4 Then x = x + 2 Else x = x + 1 End If Xcount = 0 End If End If Next i End With End Sub
(TAKA) 2018/08/08(水) 10:11
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.