列到行的度量(以及从列到行的date)

目前,我有两个报告,他们是不同的格式,并希望使用macros或公式将其中一个报告转换为与另一个相同的格式,以便将两个报告合并在一起。

由于这两个报告提供了不同的指标,但基于相同的名称date (分段)。 我想知道是否有办法做到这一点,而不是手动透视表每个date范围和手动转换的一切。

下面是这个例子,我想将第一个包含行列的食物A,B和C的报告转换成行,而在列中排列的date( 16-Sep-2016 25-Sep-2016 )如下表所示。

示例图片:

在这里输入图像说明

希望尽快收到任何人的来信!

谢谢 :)

这是远远不够的,只是一个快速的解决scheme,但它的工作。 它将图片上方的表格转换成另一张。 您的原始表格必须在第一张纸上,并且在运行macros之前您需要一个空的第二张纸张:

 Sub TableChanger() Dim i As Integer, j As Integer, k As Integer Dim n As Integer Sheets(2).Cells.ClearContents Sheets(2).Cells(1, 1).Value = "Date" Sheets(2).Cells(1, 2).Value = "Name" i = 2 n = 2 While Sheets(1).Cells(i, 1).Value <> "" j = 3 While Sheets(1).Cells(i, 1).Value <> Sheets(2).Cells(1, j).Value And Sheets(2).Cells(1, j).Value <> "" j = j + 1 Wend If Sheets(2).Cells(1, j).Value = "" Then Sheets(2).Cells(1, j).Value = Sheets(1).Cells(i, 1).Value End If i = i + 1 Wend i = 3 While Sheets(1).Cells(1, i).Value <> "" j = 2 While Sheets(1).Cells(j, 1).Value <> "" k = 3 While Sheets(2).Cells(1, k).Value <> Sheets(1).Cells(j, 1).Value k = k + 1 Wend n = 2 While (Sheets(1).Cells(1, i).Value <> Sheets(2).Cells(n, 1).Value Or Sheets(1).Cells(j, 2).Value <> Sheets(2).Cells(n, 2).Value) And Sheets(2).Cells(n, 1) <> "" n = n + 1 Wend Sheets(2).Cells(j, 1).Value = Sheets(1).Cells(1, k).Value If Sheets(2).Cells(j, 1).Value <> "" Then Sheets(2).Cells(j, 2).Value = Sheets(1).Cells(j, 2).Value Sheets(2).Cells(n, k).Value = Sheets(1).Cells(j, i).Value j = j + 1 Wend i = i + 1 Wend End Sub