EXCEL 每次满足条件后,按顺序输出B1,B2,B3,........

输出C列,当A1为1时C1输出1;当A2不为1时C2输出B1,C3输出B2.......。直到A7为1时C7输出1;A8不为1,C8输出B1,C9输出B2.........
A B C
1 1 11 1
2 2 12 B1
3 5 13 B2
4 4 14 B3
5 5 15 B4
6 6 16 B5
7 1 17 1
8 7 18 B1
9 6 19 B2
10 8 20 B3

第1个回答  2017-12-26

C1输入1

C2输入

=IF(A11=1,1,OFFSET(B$1,ROW()-LOOKUP(1,0/(C$1:C10=1),ROW(A:A))-1,))

回车并向下填充。

另,如果A1不=1时,C1要返回什么?

第2个回答  2017-12-26

给你一段宏代码,你测试一下,看是不是你说的那个意思,有什么不明白的再问我。

Sub shuchu()
Dim i
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row Step 6
If Cells(i, 1) = 1 Then
Cells(i, 3) = 1
Else
Cells(i, 3) = ""
End If
If Cells(i + 1, 1) <> 1 Then
Cells(i + 1, 3) = "B1"
Else
Cells(i + 1, 3) = ""
End If
Cells(i + 2, 3) = "B2"
Cells(i + 3, 3) = "B3"
Cells(i + 4, 3) = "B4"
Cells(i + 5, 3) = "B5"
Next i
End Sub

第3个回答  2017-12-26
可以用LOOKUP函数定位C列中上面的1的间隔位置,取值为B后面的数字本回答被网友采纳
相似回答