Establishes the foundational structure, core Excel functionality, and tooling. - Implements base components for cells, ranges, columns, and rows. - Integrates a custom calculation engine with a wide range of Excel functions. - Adds comprehensive support for styling, conditional formatting, data validation, comments, pictures, and charts. - Configures build setup, project metadata (NuGet), and developer guidelines. - Includes editor and Git attributes for consistent code style and line endings.
56 lines
2.1 KiB
C#
56 lines
2.1 KiB
C#
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);
|
|
}
|
|
}
|
|
}
|