在Excel中渲染STAR模式(二维表格)

如果不在这里,请转到合适的论坛。

我有一个数据馈送,代表星形模式中的一些多维数据。 例如/ Products / SalesYear / SalesContact / Region / Salesdata

现在我想在一个简单的表格视图中呈现这些数据

                             2005年2006年2007年
产品1                    
 类别1 2700万3000万3500万美元
 类别2 9m $ 1m $ 11m $
产品2                    
 类别1 2700万3000万3500万美元
 类别2 9m $ 1m $ 11m $

有没有可以用来显示这种数据的标准algorithm或技术?

[编辑]

我所需要的是一种有效的方法来构build像powerpivot这样的内存中的多维数据集,但规模较小。

我想你可以使用@Dick Kusleika的这个答案的修改版本: 在Excel 2007中,将具有多列数据的行转换为列 。 请注意,这个解决scheme并不是上面的Product1 / Product2下面的嵌套行,但是我猜你可以很容易地修改解决scheme来处理两个行标题:列A包含产品名称,列B包含类别。


编辑:我误解了,并认为你正在试图获取数据的格式,而不是该格式。

如果您使用的是Excel 2010,则PowerPivot插件可以直接使用OData字段(在OData.org使用者页面上find答案)。如果您有一个较旧的Excel,则可能仍然可以使用Get External Data From Web 。您可能需要抛出一个代理页面(ASP.NET,PHP,无论您愿意),理解JSON并将其转换为HTML表格。 Get External Data From Web一定能够理解如何从数据中读取数据标准表。

一旦在Excel中的规范化表单中有数据,它应该只是插入使用该范围的数据透视表作为其数据源的问题。