如何在 C# 中将 System.Drawing.Color 转换为 Excel.ColorFormat?更改注释颜色
How to convert from System.Drawing.Color to Excel.ColorFormat in C#? Change comment color
我正在为 Excel 开发一个 vsto 插件,我正在尝试更改 Excel 中注释的颜色。
这是我的代码:
Excel.Range activeCell = _application.ActiveCell;
activeCell.AddComment("some text"));
activeCell.Comment.Shape.Fill.BackColor = Color.Red;
我遇到的异常是:
Cannot implicitly convert type 'System.Drawing.Color' to 'Microsoft.Office.Interop.Excel.ColorFormat'
我找不到如何在两种格式之间进行转换。
一种选择是使用 ColorTranslator.ToOle
int oleColor = ColorTranslator.ToOle(Color.Red);
activeCell.Comment.Shape.Fill.BackColor.RGB = oleColor;
试试这个:
activeCell.Comment.Shape.Fill.BackColor = XlRgbColor.rgbRed;
或者这个(编辑:错误):
activeCell.Comment.Shape.Fill.BackColor.RGB = Color.FromRgb(255,0,0);
我正在为 Excel 开发一个 vsto 插件,我正在尝试更改 Excel 中注释的颜色。
这是我的代码:
Excel.Range activeCell = _application.ActiveCell;
activeCell.AddComment("some text"));
activeCell.Comment.Shape.Fill.BackColor = Color.Red;
我遇到的异常是:
Cannot implicitly convert type 'System.Drawing.Color' to 'Microsoft.Office.Interop.Excel.ColorFormat'
我找不到如何在两种格式之间进行转换。
一种选择是使用 ColorTranslator.ToOle
int oleColor = ColorTranslator.ToOle(Color.Red);
activeCell.Comment.Shape.Fill.BackColor.RGB = oleColor;
试试这个:
activeCell.Comment.Shape.Fill.BackColor = XlRgbColor.rgbRed;
或者这个(编辑:错误):
activeCell.Comment.Shape.Fill.BackColor.RGB = Color.FromRgb(255,0,0);