Кажется, есть ряд предложений сделать это, но ни одно из них не работает.
По сути, я хочу изменить текстовое значение на листе Excel на число (это ячейка, которая была установлена как число, сохраненное как текст, и рядом с ним есть зеленый ромб).
На этой веб-странице подробно описано, как решить проблема в Excel через пользовательский интерфейс, и я записал это как макрос ниже (но это VBA)...
В том числе установить значение самому себе:
Range allCellsRng;
string lowerRightCell = "AZ500";
allCellsRng = wSheet.get_Range("A1", lowerRightCell).Cells;
foreach (Range cell in allCellsRng)
{
if (cell.Value2.ToString().Length > 0)
{
cell.Value2 = cell.Value2;
}
}
Это записанный макрос VB, который показывает, что решит проблему, но у меня проблемы с представлением этого на С#:
ActiveCell.FormulaR1C1 = "0"
Range("A1").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, SkipBlanks _
:=False, Transpose:=False
Range("A1").Select