Это был первый результат, который я нажал, и удаление столбца в Excel не требует столько кода, сколько предлагают текущие ответы. Фактически (при условии, что у вас уже есть объект Worksheet
, указанный ниже как mySheet
), все, что нужно для первоначального вопроса:
mySheet.Columns["C"].Delete();
Если вы хотите удалить несколько столбцов, то:
mySheet.Columns["C:D"].Delete();
Вы можете указать переменную в методе Delete
(см. https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.excel.xldeleteshiftdirection?view=excel-pia), т. Е. mySheet.Columns["C"].Delete(xlShiftToLeft)
, но в этом нет необходимости, поскольку метод Delete
достаточно умен, чтобы понять, что выбранный вами Range
один столбец, поэтому будет делать это автоматически.
Вы также можете использовать числовое значение для обозначения столбца, т.е. mySheet.Columns[2].Delete()