Excel动态数据系列。不寻常的数据外观和图表

时间:2013-12-18 09:40:51

标签: excel charts

由于我解决了以前从数据库收集数据的问题,我现在需要将这些数据放在图表上。我正在编写一个名为ReportWorx的报告生成软件。 问题是,数据是串联的,看起来像这样:

ID    DATE        SAMPLE  
1     XX-XX-XX    VALUE  
1     XX-XX-XX    VALUE  
1     XX-XX-XX    VALUE  
2     XX-XX-XX    VALUE  
2     XX-XX-XX    VALUE  
3     XX-XX-XX    VALUE  
3     XX-XX-XX    VALUE  

我无法改变它的外观,因为它是自动生成的。我想要的是线性图表,其中1,2,3是系列名称,当然在它旁边DATE和VALUE放在线性图表(或条形图,w / e)上(X轴上的日期,Y轴上的值)

我无法指定将有多少记录(多少行),但我发现很少有关于创建动态增加图表的解决方案,所以可能它不会是一个问题。我只是不知道如何将ID系列彼此分开。

编辑:
我根据第一个答案找到了VBA的解决方案。这里有VBA代码:

Sub Rewrite()
Dim row, id
For row = 38 To 1000
    For id = 1 To 37
        If Sheet1.Cells(row, 1).Value = id Then
            Sheet2.Cells(row, 1).Value = Sheet1.Cells(row, 2)
            Sheet2.Cells(row, id + 1).Value = Sheet1.Cells(row, 3)
        End If
    Next id
Next row
End Sub

谢谢@ sancho.s

1 个答案:

答案 0 :(得分:1)

我会发布一个解决方案,我对你这样的案件大量使用。

enter image description here enter image description here

参考图(我使用样本编号),你设置了3个新列(这里是D:F),其标题包含相应的标签。然后使用公式“拆分”与每个标签关联的X数据列表(此处为B列),并为此处的#N/A指定不对应的数据的“NULL”值,但您可以选择任何您想要的):

=IF($A3=D$2,$B3,$B$1)

您在D3中输入此内容。使用的绝对/相对索引允许在整个D3:F9中进行复制和粘贴。 此处的单元格B1包含“NULL”值。 然后绘制3个系列:列C对列D,E,F。

PS:我猜你可以拆分Y数据列,但结果相似。出于某种原因我不记得了,很久以前我决定这是最好的选择,至少在我的情况下。您可能想尝试其他选项。

PS2:这也适用于未按标签排序的数据。

PS3:使用NA()作为“NULL”值可以避免将单元格值视为零然后显示在图表中,就像其他错误一样(例如,尝试使用=1/0在B1)。这是我到目前为止找到的最佳选择。或者(如果您发现它有用),您可以使用超出实际X数据范围的显式值,但是您必须手动设置X轴范围。所有这些都是针对Scatter情节,只需检查一下哪种情况适用于您的情况。