将行值显示为按某个列分组的列
我在MS-Excel中有一些特定的数据,如下所示 –
unit installment Amount date u1 m1 1500 11-Jan-14 u1 m2 1000 15-Apr-14 u1 m3 2500 17-Sep-14 u2 m1 2400 12-Feb-14 u2 m2 1800 14-Jun-14 u3 m1 8000 11-Jan-14 u3 m2 1600 15-Apr-14 u3 m3 4500 17-Sep-14
我需要以下格式的MS-Excel输出 –
Unit m1 Date m2 Date m3 Date u1 1500 11-Jan-14 1000 15-Apr-14 2500 17-Sep-14 u2 2400 12-Feb-14 1800 14-Jun-14 u3 8000 11-Jan-14 1600 15-Apr-14 4500 17-Sep-14
这是我在MS-excel 2010版中需要的。我不确定这是否在技术上是可能的,因此我已经寻找了一个可能的解决scheme,但是到处都是最终进入转置。 但是如果你注意到,这实际上不是一个转置。
注 : – 分期付款(m1,m2,m3)是可变的。 但是,可以假设所有唯一的集合将显示为列标题。 如果任何单位没有里程碑,它将是空白的(例如: – 对于上面的u2 – m3是空白的)。
此外,如果这个解决scheme是可能的使用SQL,即使这样我可以通过获得出口的Excel中的SQL结果来解决这个问题。 如果解决scheme在SQL中是可行的,那么请将上述input数据假设为一个源表并输出数据作为结果。
假设没有重复的Unit
/ Installment
对,这个转换可以通过使用数据透视表进行几次点击(如果有重复的话,只显示Amount
和Date
聚合值(例如max
))。 以下是详细的解释。
步骤1。
select你的数据,转到INSERT-->PivotTable
并创build新的INSERT-->PivotTable
表。
第2步。
拖动列名(如下图所示):
-
unit
到ROWS
区域。 -
installment
到COLUMNS
区域。 -
Amount
为VALUES
区域。 -
date
到VALUES
区域。
第三步。
在VALUES
区域的Amount
字段上点击鼠标左键(可以命名Sum of Amount
或类似的东西),然后点击Value Filed Settings...
步骤4。
将计算types更改为Max
并将其名称改为Amount_
(因为我们已经在初始数据中已经有了名称,所以我们不能使用Amount
名称,这就是为什么我已经将下划线_
添加到名称 – 可以将其更改为空格)。
第五步。
在VALUES
区域的Date
字段上点击鼠标左键(可以命名Count of Date
或类似的东西),然后点击Value Filed Settings...
第六步。
将计算types更改为Max
并命名为Date_
(我们不能使用Date
名称,因为我们已经在初始数据中使用了这个名称,这就是为什么我已经将下划线_
添加到名称 – 可以将其更改为空格)。
此外,对于date字段,我们应该更改数字格式 (因为它可以显示为数字,而不是date)。 所以,点击Number Format
button。
第七步。
select所需的date格式。
第八步。
如果您的表格包含“总计”行/列,则可以按照下图所示禁用它们。 随着数据透视表上的活动单元转到Design--> Grand Totals
并selectOff for Rows and Columns
结果。
现在你的桌子已经可以使用了。 如果你不想像数据透视表一样使用它,只需将它的内容作为普通数据复制到其他地方。