我会尽量准确地解决我的问题,但如果您有任何问题,请提出!
所以基本上我有一个充满日期的列(从第 1 行到第 80 行)和一个充满值的列 B(股票价格,也具有相同的范围)。我用这段代码创建了一个图表:
Sub Chart()
Range(Cells(1, 1), Cells(80, 1))Select
Range(Selection, Selection.Offset(0, 1)).Select
Set rSource=selection
ActiveChart.SetSourceData Source:=rSource, PlotBy:=xlColumns
ActiveChart.Location Where:=xlLocationAsNewSheet
end sub
所以这不是图表对象,而是新工作表上的新图表(我这么说是因为我读过的关于这个主题的所有内容都是处理图表对象而不是工作表中的图表)。现在我需要在两个日期之间画一条水平线(一条支撑线)。例如,我需要在 01/01/2013(第 1 行)和 06/25/2013(第 80 行)之间画一条线。这条线必须保持在 y 轴上的同一水平(这就是我们所说的水平线 :))在 2013 年 1 月 1 日的股价水平。
我试过了:
Sub supportline()
Dim CoordA As Variant
CoordA = [a1:b80]
ActiveChart.Shapes.AddLine(CoordA(1, 1), CoordA(1, 2), CoordA(80, 1), CoordA(80, 2)).Select
end sub
但这条线没有画在我想要的地方。我认为存在比例问题,但我无法弄清楚如何获得准确的坐标。
非常感谢您的时间和帮助
编辑(06/11/2013)我已经简化了数据库来说明我的问题:http ://cjoint.com/?CFksHluf0VD我试图在两个日期(01/01/2013 和 16 /01/2013)
如果您下载此文件,您将在 VBA 部分中看到:1/ Test1:我尝试制作一条线来链接图表的 2 个点:如果您启动子程序,您会看到该线已绘制但在错误的比例和错误的位置 2/测试 2:我试图在两点之间画一条水平线,但这根本不起作用
测试 2 是我需要为我的原始项目做的(一条从一个日期到另一个日期的水平线,具有相同的 y 值)