Excel API Features
The FlexCel API is at the core of FlexCel studio. It allows reading, writing and modifying xls files with .NET code.
<#image>
Outstanding support for modifying files
You can use InsertAndCopyRange / InsertAndCopySheet / DeleteRange / DeleteSheet / MoveRange methods to modify any existing file keeping every other feature as is, and behaving the same as Excel. All formulas, ranges, tables, charts, etc. will adapt to the inserted cells. This means that if you for example insert cells inside a range that has a pivot table, the pivot table will expand to handle the new cells, even when the API has no methods for modifying Pivot tables.

Inserting, copying and moving ranges is not an afterthought, the whole API is designed around this functionality and it is as fast as it can be.
<#image>
Copy sheets from one workbook to another
The InsertAndCopySheet method allows copying sheets between workbooks, so you can join them. If you copy many sheets at once, formulas between related sheets will be copied and point to the correct location. If there are formula references on the sheets being copied to sheets not copied, you can use ConvertFormulasToValues before copying.
<#image>
Full support for conditional formats
All conditional formats are supported, both in xls or xlsx files. They are evaluated and exported to pdf or HTML. The APIMate tool can tell you how to enter any conditional format by code.
<#image>
Full support for formatting cells
This includes merging and unmerging cells, different fonts on the same cell, cell borders and patterns, rotated text, autowrap, autofit, column and row styles etc.
<#image>
Intelligent Page Breaks
With this exclusive FlexCel feature, you can specify what rows or columns you would like to keep together in a sheet, and FlexCel will automatically add page breaks so the sheet prints as you intend it to. You can have multiple levels of "keep together", if FlexCel can not fit the lower level rows and columns in one sheet, it will try to at least fit the higher level ones. And you can use this feature in reports too.
<#image>
Support for entering HTML formatted strings inside cells
With the AsHTML method on TRichString, you can enter for example “<b>Hello</b><br>World” inside a cell and have it converted to Excel rich text format.
<#image>
Full support for reading and writing formulas
You can enter or read any formula, including array formulas.
<#image>
Full support for Formula recalculation
Includes support for more than 300 functions nested in any way you want them. A demo tool is provided to validate FlexCel results against Excel. Array formulas are supported, as are 1904 dates or "precision as displayed" options. You can also define your own "UDFs" (excel user defined functions) in FlexCel so files with UDF will also be recalculated
<#image>
Recalculation of Linked Files
FlexCel can calculate formulas linked to other files, with any level of nesting, cicular links and with complete control over the files recalculated.
<#image>
Full support for hyperlinks
Add, delete and/or modify any hyperlink, with all the options available in Excel.
<#image>
Full support for Named ranges
Read, create, delete or modify named ranges, local to a sheet or global to the workbook. Any formula inside the name is supported.
<#image>
Autoshapes reading and modifying support
Read any autoshape property and modify it. Also delete/copy autoshapes or change their position and text.
<#image>
Full support for printing options
Set and get all printing options (paper size, rows to repeat at the top, etc). Also add images to headers and footers, or read the existing images.
<#image>
Full support for Images
Add images to a sheet, modify them, delete them and change their properties.
<#image>
Full support for Comments
Read and write them as you want.
<#image>
Full Group and outline support
It works the same as in Excel. Add and modify row and column outlines, and read their values.
<#image>
Full Data Validation support
Create or find out the data validation options in a cell, with the full array of options included in Excel.
<#image>
Autofit support
Autofit a column, a row or all the rows on a sheet so all the text is visible in the column or row.
<#image>
Autofilter support
Read or write autofilters in any xls or xlsx file
<#image>
Support for reading Charts.
Read all the properties of a chart (xls charts only, not xlsx). No support is given to add a new chart yet, but you can copy an existing one, and also insert rows on a template to modify the ranges of the chart.
<#image>
Support for saving and reading from a stream.
This means that you can stream the files directly to a browser or a database without creating them as temporary files.
<#image>
Read and Write Encrypted files
Full support for Excel 97 and 2000 encryption (the default on Excel 97-2003) and for workbook protection options (password protect a sheet, lock cells, etc.) Full support for Excel 2007, 2010 and 2013 xlsx encryption.
<#image>
Copy and Paste support
With FlexCel your application can copy and paste in native xls format, without having to rely on txt. Of course txt is fully supported too, so you can paste or copy from other applications like OpenOffice. But when copying and pasting to Excel, the xls format is used.
<#image>
Sort and Search and Replace in ranges
Sort a range of cells as you would with Excel, and also search and/or replace expressions inside cells.
<#image>
Support for exporting to other file formats
Read and Save as CSV, TXT or PXL (Pocket Excel)
<#image>
Tool For exploring the API included
FlexCel includes a tool, APIMate, that lets you easily find out which method you need to call to do a task. Do you want to enter a rich string with the first part in blue and the second in red? Just do it in Excel, and open the file with APIMate to learn the commands you need to enter in your application. Code is generated in C#, Visual Basic.NET and Oxygene.
And more…
We are always improving FlexCel so it supports more and more functionality. Feel free to email us for any doubt or request