每次将新值排列到两个单元格中

用最简单的方式解释它:

| 1 | 2 | 3 | 4 | | 5 | 6 | 7 | 8 | 

…需要看起来像:

 | 1 | 2 | | 3 | 4 | | 5 | 6 | | 7 | 8 | 

我尝试过使用TRANSPOSE()函数,但是在这种情况下似乎不起作用。

我怎样才能完成这个简单的任务?

在一个未使用的单元格右边使用这个公式,

 =OFFSET($A$1, INT((ROW(1:1)-1)/2), COLUMN(A:A)-1+MOD((ROW(1:1)-1), 2)*2) 

填写一栏,尽可能填写。 你的结果应该类似于以下内容。

将柱子洗下来

你把excel-vba放在你的标签中,所以我会为你发布vba代码。 我不知道如何用简单的细胞公式来做到这一点。 希望它是可configuration的,以获得你想要的,除了你给的简单例子:

 START_ROW = 1 START_COL = 1 STEP_COL = 2 OUTPUT_ROW = 3 OUTPUT_COL = 10 Row = START_ROW Col = START_COL Out_Row = OUTPUT_ROW While Cells(Row, Col).Value <> "" While Cells(Row, Col).Value <> "" For step = 0 To STEP_COL - 1 Cells(Out_Row, OUTPUT_COL + step).Value = Cells(Row, Col + step).Value Cells(Out_Row, OUTPUT_COL + step).Value = Cells(Row, Col + step).Value Next step Out_Row = Out_Row + 1 Col = Col + STEP_COL Wend Col = START_COL Row = Row + 1 Wend