EPPlus DeleteRow не сдвигает строки вверх - PullRequest
0 голосов
/ 13 июня 2018

У меня есть выражение if, которое, если выполнено, скрывает строку в моем листе.Мне нужно, чтобы строка была полностью удалена, а затем смещена вверх.

Используя DeleteRow, который предположительно должен автоматически смещаться вверх, но это не так.Конечным результатом является то, что мой лист Excel по-прежнему содержит эти записи, только что вся строка теперь пуста.

Я использую EPPlus v4.5.2.1

if (!computerMap.ContainsKey(systems[i])) { 
    //ws.Row(2 + i).Hidden = true; //commented out
    ws.DeleteRow(2 + i);
}

1 Ответ

0 голосов
/ 13 июня 2018

Существует 3 перегруженных метода, и вы должны использовать один с 3 параметрами.

DeleteRow(int rowFrom, int rows, bool shiftOtherRowsUp);

Это удалит непрерывную область данных.Если вам нужно удалить несколько областей без продолжения, то определите все области, которые нужно удалить, и удалите их в цикле, используя этот метод.

...