问题
I'm developing a vsto addin for Excel, and I'm trying to change the color to the comments in Excel.
This is the code that I have:
Excel.Range activeCell = _application.ActiveCell;
activeCell.AddComment("some text"));
activeCell.Comment.Shape.Fill.BackColor = Color.Red;
The exception I'm getting is:
Cannot implicitly convert type 'System.Drawing.Color' to 'Microsoft.Office.Interop.Excel.ColorFormat'
I cannot find how to make a conversion between the two formats.
回答1:
One option is to use ColorTranslator.ToOle
int oleColor = ColorTranslator.ToOle(Color.Red);
activeCell.Comment.Shape.Fill.BackColor.RGB = oleColor;
回答2:
Try this:
activeCell.Comment.Shape.Fill.BackColor = XlRgbColor.rgbRed;
Or this(EDIT: False):
activeCell.Comment.Shape.Fill.BackColor.RGB = Color.FromRgb(255,0,0);
来源:https://stackoverflow.com/questions/37786008/how-to-convert-from-system-drawing-color-to-excel-colorformat-in-c-change-comm