using System; using ClosedXML.Excel; namespace ClosedXML_Examples { public class InsertingDeletingColumns : IXLExample { public void Create(String filePath) { var workbook = new XLWorkbook(); var ws = workbook.Worksheets.Add("Inserting and Deleting Columns"); // Range starts with 2 columns var rng = ws.Range("B2:C3"); // Range starts on B2 // Insert a column before the range ws.Column(1).InsertColumnsAfter(1); // Range starts on C2 // Insert a column in between the range ws.Column(3).InsertColumnsAfter(1); // Range now has 3 columns // Insert a column (from a range) before the range ws.Range("A2:A3").InsertColumnsAfter(1); // Range starts on D2 // Insert a column (from a range) in between the range ws.Range("D2:D3").InsertColumnsAfter(1); // Range now has 4 columns // Inserting columns from a range not covering all columns // does not affect our defined range ws.Range("A1:A2").InsertColumnsAfter(1); ws.Range("E3:E4").InsertColumnsAfter(1); // Delete a column before the range ws.Column(1).Delete(); // Range starts on C2 // Delete a column (from a range) before the range ws.Range("A2:A3").Delete(XLShiftDeletedCells.ShiftCellsLeft); // Range starts on B2 // Delete a column in between the range ws.Column(3).Delete(); // Range now has 3 columns // Delete a column (from a range) in between the range ws.Range("C2:C3").Delete(XLShiftDeletedCells.ShiftCellsLeft); // Range now has 2 columns // Deleting columns from a range not covering all columns // does not affect our defined range ws.Range("A1:A2").Delete(XLShiftDeletedCells.ShiftCellsLeft); ws.Range("D3:D4").Delete(XLShiftDeletedCells.ShiftCellsLeft); rng.Style.Fill.BackgroundColor = XLColor.Orange; workbook.SaveAs(filePath); } } }