代码之家  ›  专栏  ›  技术社区  ›  Aximili

Excel automation C#:如何删除列?

  •  9
  • Aximili  · 技术社区  · 14 年前

    如何在Excel中删除一列(或多列)?

    2 回复  |  直到 4 年前
        2
  •  21
  •   Community CDub    8 年前

    这里有一个解决方案使它更清楚(感谢 Leniel 对于链接)

    Excel.Range range = (Excel.Range)sheet.get_Range("C1", Missing.Value);
    range.EntireColumn.Delete(Missing.Value);
    System.Runtime.InteropServices.Marshal.ReleaseComObject(range);
    
        3
  •  2
  •   d219    5 年前

    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) 但是没有必要像 删除 Range 您选择的是单个列,因此将自动执行此操作。

    您也可以使用数值来指定列,即。 mySheet.Columns[2].Delete()