我一直在寻找一种方法来自动将 Excel 表中的数据转换为矩阵。例如,从左侧表格转换为右侧矩阵,如下图所示:
显然数据透视表无法解决这个问题,因为它只能汇总。我需要的是显示单个数据。
Excel 中是否有内置函数可以解决这个特殊需求,或者我必须使用 VBA,如果是,如何使用?
答案1
没有单一的内置 Excel 函数可以实现您的要求。如果是一次性要求,则将一些排序、移动和简单的内置函数组合在一起(我认为您完全有能力在没有帮助的情况下实现),或者使用 VBA。
推论是,要么您有很多条目(尽管这对一次性要求没有什么影响),要么您需要经常这样做。至于这里的许多 Excel 问题,数量和频率与选择适当的方法有关,如果您让那些愿意回答的人猜测这些细节,您(和其他人)可能不会得到像其他方式一样好的建议。
这里的复杂性似乎主要在于您具有多对一关系(实际上,I
)。至于您的问题的“如何?”我建议 (a) 打开宏记录器并一次性完成该过程 (b) 按部门内的级别排序 (c) 然后偏移并重新定位部门以适应最后 (d) 对齐以适应。
如果你有具体的您的代码存在问题,我们的姊妹网站 Stack Overflow 拥有修复这些问题的神奇方法。
后记:数据透视表可能非常适合作为流程的一部分。将所有三个字段设置为行标签(自上而下:部门、级别、姓名)、下移Low
、复制/选择性粘贴/值,剩下的就是重新定位。