我试图转移列中的所有单元格" Item"直到它遇到深度1.循环+10000单元
Item Depth
A 1
B 2
C 2
D 3
E 4
F 5
G 1
H 2
I 2
J 1
K 2
我需要这个结果:
Item Depth
A 1 A B C D E F
B 2
C 2
D 3
E 4
F 5
G 1 G H I
H 2
I 2
J 1 J K
K 2
我认为VBA更适合这项工作,但我不知道从哪里开始。
答案 0 :(得分:0)
如果您首先突出显示A-K,则此功能将起作用,因此请从A2到A12中选择。
Sub Transpose()
Dim currentCell As Range
Dim outputCell As Range
For Each currentCell In Selection
If currentCell.Offset(0, 1).Value = 1 Then
Set outputCell = currentCell.Offset(0, 2)
Else
Set outputCell = outputCell.Offset(0, 1)
End If
outputCell.Value = currentCell.Value
Next currentCell
End Sub
答案 1 :(得分:0)
假设Item
在A1中,如果在ColumnB的第一个空白单元格中插入了1
,则可以使用公式:
=IFERROR(IF(AND($B2=1,COLUMN()<3+MATCH($B2,$B3:$B11000,0)),OFFSET(B2,COLUMN()-3,2-COLUMN()),""),"")
向上和向下复制以适应,直到整个列为空。