首先,我已经看过每个其他帖子,关于这个(我认为),并没有一个解决它。更改Excel 2007图表系列中的线条颜色
我在excel中有一个图,我想改变这一行的颜色。看起来,系列行设置中的所有内容都遥遥无期。如果我无法设置颜色,我想将填充设置为无,因此线条不可见,只显示可以操作的标记。
但是,填充也在颜色设置中。
我曾尝试录制一个宏,但它没有显示任何内容,除了系列选择。
其他帖子在这里,建议设置边框的系列,但没有边界对象,据我所知。
有没有人有任何技巧可以解决这个问题?
首先,我已经看过每个其他帖子,关于这个(我认为),并没有一个解决它。更改Excel 2007图表系列中的线条颜色
我在excel中有一个图,我想改变这一行的颜色。看起来,系列行设置中的所有内容都遥遥无期。如果我无法设置颜色,我想将填充设置为无,因此线条不可见,只显示可以操作的标记。
但是,填充也在颜色设置中。
我曾尝试录制一个宏,但它没有显示任何内容,除了系列选择。
其他帖子在这里,建议设置边框的系列,但没有边界对象,据我所知。
有没有人有任何技巧可以解决这个问题?
因此,在MSDN论坛上,Andrei Smolin为我解决了这个问题。 确实是Series.Border固定它。
最大的问题是,边界不会显示为系列中的对象。即使在VBA中也没有。 它似乎在Excel 2010中得到修复,但这是我在2007 SP3中遇到的行为。
因此,该解决方案是简单地键入:
MSExcel.Series Series1 = (MSExcel.Series)Chart.SeriesCollection(1);
Series1.Border.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.FromArgb(79, 129, 189));
其编译的罚款,并在运行时的工作。
以供参考,这是MSDN线程:
http://social.msdn.microsoft.com/Forums/en-US/vsto/thread/2816660e-a18e-47f4-b121-02a71cb2c262
对于Excel 2007中,以下:
series5.Interior.Color = Color.FromArgb(80, 208, 146).ToArgb();
为我工作。
除了尼古拉的回答,有一个颜色值传递给Border.Color更简单的方法,例如:
Series1.Border.Color = (int) XlRgbColor.rgbRed;
你怎么练成存取权限,通过C#代码? (根据您的标签) – Moonlight 2012-01-12 08:18:23
@Moonlight,使用Microsoft.Office.Interop.Excel – Nicolai 2012-01-12 08:24:51
发布您的代码,即选择该系列的c#会很有帮助。图表是在一张普通的工作表或图表中吗? – 2012-01-12 16:01:38