我在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中所需要的东西。我不确定这是否在技术上是可行的,我已经搜索了一个可能的解决方案,但到处都是我最终进入转置。但是如果你注意到,这实际上不是转置。
注意: - 分期付款组(m1,m2,m3)是可变的。但是,可以假设所有唯一集都将显示为列标题。如果任何单位没有里程碑,则它将为空白(例如: - 对于u2以上 - m3为空白)。
此外,如果使用SQL可以实现此解决方案,即使这样,我也可以通过在excel中导出sql结果来解决此问题。如果在SQL中可以使用该解决方案,那么请将上述输入数据作为源表并输出数据作为结果。
答案 0 :(得分:1)
假设没有重复的对Unit
/ Installment
,可以使用Pivot Table在几次点击中完成此转换(如果有重复项,只有agregate值(例如max
})显示Amount
和Date
。以下是详细说明。
<强>步骤1。强>
选择您的数据,转到 INSERT-->PivotTable
并创建新的数据透视表。
<强>步骤2。强>
拖动列名称(如下图所示):
unit
到ROWS
区域。installment
到COLUMNS
区域。Amount
到VALUES
区域。date
到VALUES
区域。
<强>步骤3。强>
鼠标左键单击Amount
区域的VALUES
字段(可以命名为Sum of Amount
或类似名称),然后点击 Value Filed Settings...
< / p>
<强>步骤4。强>
将计算类型更改为Max
并将名称更改为Amount_
(我们无法使用Amount
名称,因为我们已将其包含在初始数据中,这就是为什么我已将下划线_
添加到名称 - 您可以将其更改为,例如,空格。)
<强>步骤5。强>
鼠标左键单击Date
区域的VALUES
字段(可以命名为Count of Date
或类似名称),然后点击 Value Filed Settings...
< / p>
<强>步骤6。强>
将计算类型更改为Max
并将名称更改为Date_
(我们无法使用Date
名称,因为我们已将其包含在初始数据中,这就是为什么我已将下划线_
添加到名称中 - 您可以将其更改为空格。)
同样对于日期字段,我们应该更改数字格式(因为它可以显示为数字而不是日期)。因此,请点击 Number Format
按钮。
<强>步骤7。强>
选择所需的日期格式。
<强>步骤8。强>
如果您的表具有“总列数/行数”,则可以将其禁用,如下图所示。 使用数据透视表上的有效单元格转到 Design--> Grand Totals
并选择 Off for Rows and Columns
<强>结果。强>
现在你的桌子已经可以使用了。如果您不想像数据透视表一样使用它,只需将其内容复制到其他地方即可。