Repository navigation
Addressing a worksheet
Mats Alm edited this page Nov 10, 2026
·
9 revisions
This page has moved. The current version of this page is at https://epplussoftware.com/docs/worksheet-and-ranges/addressing/cells-and-ranges/. The EPPlus documentation is no longer updated in this wiki; please use the EPPlus guides and update your bookmarks.
Cell addressing in EPPlus works pretty much as it works in Excel.
Addressing cells is made in the indexer of the ExcelWorksheet.Cells property (the ExcelRange class).
Here´s a few examples of how you can address ranges.
ws.Cells["B1"].Value = "This is cell B1"; // Sets the value of Cell B1
ws.Cells[1, 2].Value = "This is cell B1"; // Also sets the value of Cell B1
worksheet.Cells["A1:B3"].Style.NumberFormat.Format = "#,##0"; //Sets the number format for a range
worksheet.Cells[1,1,3,2].Style.NumberFormat.Format = "#,##0"; //Same as above,A1:B3
worksheet.Cells["A1:B3,D1:E57"].Style.NumberFormat.Format = "#,##0"; //Sets the number format for a range containing two addresses.
worksheet.Cells["A:B"].Style.Font.Bold = true; //Sets font-bold to true for column A & B
worksheet.Cells["1:1,A:A,C3"].Style.Font.Bold = true; //Sets font-bold to true for row 1,column A and cell C3
worksheet.Cells["A:XFD"].Style.Font.Name = "Arial"; //Sets font to Arial for all cells in a worksheet.
worksheet.Cells.Style.Font.Name = "Arial"; //This is equal to the above.
//Access row and column properties. These properties are available from EPPlus 5.8.
worksheet.Rows[1, 18].Height = 25;
worksheet.Cells["A1:A18"].EntireRow.Height = 25; //Access row properties for a range, in this case row 1-18
worksheet.Columns[2, 3].Width = 18;
worksheet.Cells["B1:C1"].EntireColumn.Width = 18; //Access column properties for a range, in this case column B:CThe EPPlus Cells indexer uses absolute addressing within the worksheet, so if you want to use relative addresses from an existing range object, use the Offset method.
var relRange1 = worksheet.Cells["A3:B4"].Offset(1, 1); //Returns a relative range to the range with 1 row and 1 column, B4:C5
var relRange2 = worksheet.Cells["C3:D4"].Offset(-1, -1); //Returns a relative range to the range with -1 row and -1 column, B2:C3;
var relRange3 = worksheet.Cells["C3:D4"].Offset(1, 1, 1, 1); //Returns a relative range to the range with 1 row and 1 column, but only the first cell, D4;EPPlus Software AB - https://epplussoftware.com
- What is new in EPPlus 5+
- Breaking Changes in EPPlus 5
- Breaking Changes in EPPlus 6
- Breaking Changes in EPPlus 7
- Breaking Changes in EPPlus 8
- Addressing a worksheet
- Dimension/Used range
- Copying ranges/sheets
- Insert/Delete
- Filling ranges
- Sorting ranges
- Taking and skipping columns/rows
- Data validation
- Comments
- Freeze and Split Panes
- Header and Footer
- Hyperlinks
- Autofit columns
- Grouping and Ungrouping Rows and Columns
- Formatting and styling
- The ExcelRange.Text property
- Conditional formatting
- Using Themes
- Working with custom named table- or slicer- styles
-
Formula Calculation
- Security considerations
- Circular references
- Referencing tables in formulas
- Supported Functions
- Dynamic array formulas
- Legacy array formulas
- Lambda functions
- Regression analysis functions
- Custom functions for calculations
- Function prefixes
- Precision as Displayed
- Cancelling a calculation
- Trim reference operator
- Working with filters
- Working with slicers
- Working with External Workbooks