【发布时间】:2017-03-14 18:31:11
【问题描述】:
这是我的数据现在的样子:
编辑:我忘了补充说,我的转置需要反复出现 - 每第 n 列,我需要再次开始转置。在此示例中,我每 2 列使用一次,但我的实际数据集是每 3 列。
Username Product 1 Product 2 Service 1 Service 2
Person 1 Name1 Name2 Name3 Name4
Person 2 Name5 Name6 Name7 Name8
这就是我希望我的数据看起来的样子:
Username Product Service (What I've come up with, formula-wise, for PRODUCT:)
Person 1 Name1 Name 3 OFFSET([Person 1],0,ROW($A$1))
Person 1 Name2 Name 4 OFFSET([Person 1],0,ROW($A$1)+1)
Person 2 Name5 Name 7 OFFSET([Person 2],0,ROW($A$1))
Person 2 Name6 Name 8 OFFSET([Person 2],0,ROW($A$1)+1)
我不知道如何使用 VBA 或宏,并且有很多数据,所以我对手动转置也不感兴趣。有没有可以在这里工作的公式?
我一直在疯狂地试图弄清楚 OFFSET 是如何工作的。现在,我在上表中看到了一个公式。在 [Person 1] 和 [Person 2] 区域内实际上是一个 INDEX-MATCH,因此 OFFSET 从正确的行开始并随着它移动到下一个人而更新。然后我一直手动复制并粘贴下一组两行。如果这听起来过于复杂,那就更糟了——它不起作用。
我非常感谢任何可以帮助我的 OFFSET 专家,或者如果之前已经回答过这个问题,可以为我指出正确的方向。我一直在环顾四周,但不确定我是否使用了正确的搜索字词。
【问题讨论】:
-
这称为反向枢轴,Excel 有执行此操作的工具,请参阅:stackoverflow.com/questions/20541905/…
-
谢谢!我以前没听过这个词,但这听起来像是我的问题:) 将查看您链接的文章
-
另一个注意事项:OFFSET 是一个易变函数,应避免大量使用,因为它会在每次 excel 重新计算时重新计算,而像 @Jeeped 给出的 INDEX 公式不是易变的,只会当他们引用的数据发生变化时重新计算。
-
感谢您让我认识 Scott。我对 INDEX MATCH 很满意,但没有在其他迭代中使用它——我想我应该在研究 OFFSET 之前先研究一下
标签: excel excel-formula rows offset