docs/features/worksheets.rst
Organizing Worksheets
It is possible to use ClosedXML to organize the worksheets in a workbook.
There are several overloads of the method AddWorksheet that take a name and a position (first position is 1). If an argument is missing, ClosedXML will use a default behavior.
For name, a new name Sheet{number} will be used. If a position is missing, sheet will be added as the last worksheet of a workbook.
.. code-block:: csharp
// Add a 'Sheet1' as the last worksheet, in the case of a new workbook as a first sheet wb.AddWorksheet();
// Add a worksheet with a name 'Export' as the last sheet of a workbook wb.AddWorksheet("Export");
// Add a worksheet Export at position 2, moving all other sheets to the right // 'Export' will be in the last position, the end result will be 'Sheet1', 'Import', 'Export' wb.AddWorksheet("Import", 2);
Methods XLWorkbook.Worksheets.Add are behaving the same way.
Worksheet can be removed using a position or a sheet name.
.. code-block:: csharp
wb.Worksheets.Delete('Export');
wb.Worksheets.Delete(2);
It is also possible to rearrange the order of the worksheets in the workbook. The worksheets will move from original position and will be in a new position, moving other sheets accordingly.
.. code-block:: csharp
wb.AddWorksheet("Sheet1"); wb.AddWorksheet("Sheet2"); wb.AddWorksheet("Sheet3"); wb.AddWorksheet("Sheet4");
// The end result will be Sheet2, Sheet3, Sheet1, Sheet4 wb.Worksheet("Sheet1").Position = 3;