2012-01-12 82 views
2

首先,我已經看過每個其他帖子,關於這個(我認爲),並沒有一個解決它。更改Excel 2007圖表系列中的線條顏色

我在excel中有一個圖,我想改變這一行的顏色。看起來,系列行設置中的所有內容都遙遙無期。如果我無法設置顏色,我想將填充設置爲無,因此線條不可見,只顯示可以操作的標記。

但是,填充也在顏色設置中。

我曾嘗試錄製一個宏,但它沒有顯示任何內容,除了系列選擇。

其他帖子在這裏,建議設置邊框的系列,但沒有邊界對象,據我所知。

有沒有人有任何技巧可以解決這個問題?

+0

你怎麼練成存取權限,通過C#代碼? (根據您的標籤) – Moonlight 2012-01-12 08:18:23

+0

@Moonlight,使用Microsoft.Office.Interop.Excel – Nicolai 2012-01-12 08:24:51

+0

發佈您的代碼,即選擇該系列的c#會很有幫助。圖表是在一張普通的工作表或圖表中嗎? – 2012-01-12 16:01:38

回答

3

因此,在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

-2

對於Excel 2007中,以下:

series5.Interior.Color = Color.FromArgb(80, 208, 146).ToArgb();

爲我工作。

0

除了尼古拉的回答,有一個顏色值傳遞給Border.Color更簡單的方法,例如:

Series1.Border.Color = (int) XlRgbColor.rgbRed;