В настоящее время я работаю над надстройкой VSTO для Excel.У нас есть код, который может обновлять значение ячейки при получении сообщения из облачного приложения.Я обнаружил, что всякий раз, когда окно электронной таблицы свернуто, ячейка не будет обновляться всякий раз, когда выполняется код для обновления ячейки.
Мы используем свойство Range.Value2 для обновления ячейки.стоимость.Я проверил, что код, который обновляет значение ячейки, фактически выполняется каждый раз, когда окно свернуто.Проблема заключается в том, что значение ячейки не обновляется всякий раз, когда свойство Range.Value2 используется, когда электронная таблица свернута.
Вот код, который обновляет значения ячейки:
private void OnLinkedCellValueChanged(object sender, IEnumerable<CellLinkModel> cells)
{
foreach (CellLinkModel cell in cells)
{
Worksheet worksheet = GetWorksheet(cell.WorkSheetId);
if (worksheet == null)
{
continue;
}
Range range = cell.GetRange();
if (range == null)
{
range = (Range) worksheet.Cells[cell.Row, cell.Column];
cell.SetRange(range);
}
range.Value2 = cell.CellValue;
}
}
ЧтоЯ вижу, что код выполняется, но значение ячейки не обновляется, если Range.Value2 установлен, а окно электронной таблицы свернуто.Кто-нибудь может сказать мне, почему это происходит, и предоставить обходной путь для обновления значения ячейки?