1

C#Excel VSTOのセルに色付きの境界線を追加するにはどうすればよいですか?

次のリンクからAPIを見つけました。境界線の追加に関する説明がいくつかありますが、あまり具体的ではありません。奇妙なことに、VS2010はBorderAround()メソッドを認識しません。それは認識しているだけのようですBorderAround2()が、私がintを入れた議論に不平を言っています。

以下は私が試したコードですが、VSは無効な引数について文句を言います。

range.BorderAround2(Excel.XlLineStyle.xlDash, Type.Missing, Type.Missing, System.Drawing.Color.Red, Type.Missing);

http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.range.borderaround(v=office.14).aspx

4

3 に答える 3

3

私自身のアプローチは idssl が提案したものと似ていますが、ColorTranslator.ToOleメソッドを利用しています。

range.Borders.LineStyle = Excel.XlLineStyle.xlDot;
range.Borders.Color = ColorTranslator.ToOle(Color.Red);

これも私にとってはうまくいきます。

于 2013-03-18T04:56:09.753 に答える
2

Borders.ColorオブジェクトのおよびBordes.LineStyleプロパティを使用しRangeます。

これは、VSTO アプリケーション レベルのアドインのスニペットです。

using Excel = Microsoft.Office.Interop.Excel;

Excel.Range pRange = Globals.ThisAddIn.Application.ActiveCell;

pRange.Borders.Color = 0x0000FF; // an RGB value in hex
pRange.Borders.LineStyle = Excel.XlLineStyle.xlContinuous;

このBorders.Colorプロパティは、指定された RGB 値の逆数を色として使用することに注意してください。

または、プロパティを使用することもできますがColorIndex、色の範囲は限られています。詳しくはこちらをご覧ください。

于 2013-03-18T00:25:34.860 に答える
0

あなたはここを見るべきです

http://www.aspose.com/docs/display/cellsnet/Add+Borders+to+Cells+in+a+Worksheet

//Set the borders with hair lines style.
_range.SetOutlineBorders( CellBorderType.Hair, Color.Black);
于 2013-02-20T09:45:09.217 に答える