Breaking Change !!
Removed SheetIndex from the worksheets, please use worksheet.Position instead.
workbook.Worksheet(Int32 index) with workbook.Worksheet(Int32 position)
workbook.Worksheets.Worksheet(Int32 index) with workbook.Worksheets.Worksheet(Int32 position)
If you're using any of these two methods, please update your code accordingly (add 1 to the index to get the position).
The reasoning behind this change is that when you want to retrieve a worksheet it is far more natural to retrieve it by it's position on the workbook than a collection index (which may not be guaranteed to map to a position). A new user will be 100% sure of what worksheet he/she is retrieving if the API says "You're retrieving the worksheet on position X". The same cannot be said of an index, it leaves the user guessing.
I try my best to desing this API as naturally as possible but sometimes I don't have the clarity that hindsight provides. Unfortunately this is where breaking changes occur. This change may seem trivial and not worth the effort but it undoubtedly makes the interface more intuitive.New on this release:1)
Fixed issues 6138
(error loading shared formulas), 6139
(Custom Properties and Shared Strings)2)
Added method workbook.GetSharedStrings() which returns the list of strings which will be shared in the workbook. Most users won't ever need to use this feature.3)
Added Boolean property cell/range .ShareString with a default value of true. If set to false the cell's text will not be shared and stored as an inline value. Most users won't ever need to use this feature.4)
Copying a worksheet also copies Table definitions, NamedRanges, PageSetup, Outlines, etc.5)
Fixed issue with tables of the same name.6)
Implemented custom properties via workbook.CustomProperties
See Workbook Properties7)
Added method cell.InsertData(collection)
which returns a range that contains the data. See Inserting Data8)
Added method cell.InsertTable(collection)
which returns a table that contains the data. See Inserting TablesNote:
The difference between InsertData and InsertTable is that InsertData doesn't insert column names and returns a range. InsertTable will insert the column names and returns a table.New ExamplesInserting TablesInserting DataModified Examples:Data TypesWorkbook PropertiesOrganizing Sheets