EXCEL,我需要从一列中获取数据并排列在另一列中,以便数据循环

EXCEL,我需要从一列中获取数据并排列在另一列中,以便数据循环

EXCEL,我有 4 列。一列有零件编号,一列空白,一列有组号和 123 个计数列。我需要将第一组中的第 1 项复制到空白列,但位于组的最后一个位置,然后将第 2 项移动到新列的第 1 个位置。第 3 项将移到新列中的第 2 项位置,依此类推,直到新列中的组完成。我有数千个这样的组,需要帮助找到公式或创建宏来安排它们,这样我就不必手动执行它们了。请帮忙,谢谢 CAD

答案1

假设您的列为A,,,...,并且您的数据从第 2 行开始,BC

=IF(C2=C3, A3, INDEX(A$2:A$20, MATCH(C2, C$2:C$20,0)))

20用最后一行的数据编号或更大的数字替换)放入单元格B2并向下拖动。这表示,

  • C如果此行的列中的值( C2) 等于C下一行的列中的值 ( C3),则此行和下一行属于同一组。在这种情况下,我们希望取下A一行的列中的值 ( A3) 并将其上移到此行。
  • 否则,row 是组的最后一行。因此,使用函数MATCH()找到当前组的第一行(即,C值等C于此行值的第一行,C2),然后使用INDEX()函数从该行获取 Column 中的值A 。换句话说,“取出第一组的第 1 项,将其复制到空白列,但位于组的最后一个位置”。

      放大,带注释

C不需要排序,但需要分组C2;即,如果=C12C7不同,则失败。

相关内容