1

我在一个文件中有 2 张纸,我想按顺序取第二张纸中各列的平均值(A、B、C、D、E、F 列等)。手动输入需要很长时间,因为有很多列。有什么方法可以自动执行此操作并将它们放置在从左到右从上到下的单元格中,就像我的图像显示的那样?

我的工作表是什么样的:

我的工作表是什么样的

4

1 回答 1

0
  • 创建一个新的电子表格并调用它A
  • 删除除第一行以外的所有行
  • 添加列,以便最终得到一个范围A1:IZ1
  • 将此公式粘贴到G1单元格中:=IFERROR(AVERAGEA(Data!D5:D100))
  • 选择G1单元格
  • CTRL+ SHIFT+RIGHT ARROW
  • CTRL+ENTER
  • 转到您的Stats工作表并删除所有AVERAGEA公式,例如。第 5、7、9 行等
  • 将此粘贴到Stats!A5单元格中:

=ARRAYFORMULA(ARRAY_CONSTRAIN(SUBSTITUTE(SPLIT(TEXTJOIN("♦", 1, 
 REPT(FILTER(A!A1:BR1, NOT(MOD(COLUMN(A!A1:BR1), 7)))&"♦♠", 6)), "♦"), "♠", ), 1, 70))

  • 将此粘贴到Stats!A7单元格中:

=ARRAYFORMULA(ARRAY_CONSTRAIN(SUBSTITUTE(SPLIT(TEXTJOIN("♦", 1, 
 REPT(FILTER(A!B1:BS1, NOT(MOD(COLUMN(A!A1:BR1), 7)))&"♦♠", 6)), "♦"), "♠", ), 1, 70))

  • 将此粘贴到Stats!A9单元格中:

=ARRAYFORMULA(ARRAY_CONSTRAIN(SUBSTITUTE(SPLIT(TEXTJOIN("♦", 1, 
 REPT(FILTER(A!C1:BT1, NOT(MOD(COLUMN(A!A1:BR1), 7)))&"♦♠", 6)), "♦"), "♠", ), 1, 70))

  • 将此粘贴到Stats!A11单元格中:

=ARRAYFORMULA(ARRAY_CONSTRAIN(SUBSTITUTE(SPLIT(TEXTJOIN("♦", 1, 
 REPT(FILTER(A!D1:BU1, NOT(MOD(COLUMN(A!A1:BR1), 7)))&"♦♠", 6)), "♦"), "♠", ), 1, 70))

  • 将此粘贴到Stats!A13单元格中:

=ARRAYFORMULA(ARRAY_CONSTRAIN(SUBSTITUTE(SPLIT(TEXTJOIN("♦", 1, 
 REPT(FILTER(A!E1:BV1, NOT(MOD(COLUMN(A!A1:BR1), 7)))&"♦♠", 6)), "♦"), "♠", ), 1, 70))

  • 等等(唯一改变的是范围在FILTER1 之后)
  • 最后的a是在BR70列结束的紫色集的最后一列的编号(BR = 70)绿色集在CF上结束所以这是第 84 列等...
  • 7代表跳跃,例如。得到每 7 个值A!A1:1
  • 6表示对偏移量的修复,因为您合并了 7 列(A5:G5H5:N5等)

0

于 2019-05-27T00:56:03.807 回答