Can Aspose.Cells do what my application needs?

Hi,
Currently my company has a very old demo of a C++ version of Cells. I’ve been tasked with turning our proof of concept into an actual feature, and it seems that the path of least resistance for that would be to continue using Cells. However, in looking at your website, I’ve been unable to find mention of a C++ version. Our existing application is 100% C++. Is a C++ version still offered? If not, is it possible to link a C++ application against your library? Would it be possible for us to write a wrapper in C# that can be linked to C++?

Assuming that we can somehow integrate with your product, I have a few other questions about its capabilities:

  1. Your documentation mentions that it supports Excel file formats from 97 through 2007. Does this include all the myriad formats introduced in 2007, such as XSLX and XSLB? Do you support manipulating CSV files? Do you have any support for native OpenOffice spreadsheets (ODS)? This last one isn’t a requirement, but would be nice to have. What about saving/exporting to these formats? What about saving as PDF or HTML?
  2. Your documentation mentions you can create and access named ranges, but doesn’t mention modifying them. Can I modify named ranges (as in the range that is named, not the cells in that range). One of the primary use cases of our software will be to look at a named range to determine a start cell, fill in a bunch of data into cells in that column, then update the named range to point to the cells just filled in. Can you support this?
  3. Is it possible to easily copy all the formatting information (including conditional formatting) from one cell to another? As described above, when we’re filling in those cells, we want to apply the formatting from the start cell to all of the cells subsequently filled in.
Thank you very much for your help.
Hi,

Well, regarding writing a wrapper class in C# to be invoked in C++ or C++ version of the product, we will update you soon. I would like to however answer your 3 queries here.

1). Your documentation mentions that it supports Excel file formats from 97 through 2007. Does this include all the myriad formats introduced in 2007, such as XSLX and XSLB? Do you support manipulating CSV files? Do you have any support for native OpenOffice spreadsheets (ODS)? This last one isn't a requirement, but would be nice to have. What about saving/exporting to these formats? What about saving as PDF or HTML?

Yes, it does include mostly MS Excel file formats including new 2007 formats e.g., XLSX, XLSM, XLTM, XLTX, CSV, PDF, HTML etc. check the documentation topics for your reference:

https://docs.aspose.com/display/cellsnet/Opening+Different+Microsoft+Excel+Versions+Files

https://docs.aspose.com/display/cellsnet/Different+Ways+to+Save+Files

https://docs.aspose.com/display/cellsnet/Convert+Excel+file+to+PDF+format+compatible+with+PDFA-1a

And regarding support for OpenOffice spreadsheets, we are working on it and will support it in our future versions.

2). Your documentation mentions you can create and access named ranges, but doesn't mention modifying them. Can I modify named ranges (as in the range that is named, not the cells in that range). One of the primary use cases of our software will be to look at a named range to determine a start cell, fill in a bunch of data into cells in that column, then update the named range to point to the cells just filled in. Can you support this?

Yes, you can modify the named range or defined names to refer to your desired cells. You can re-create a named range for your requirements.

3). Is it possible to easily copy all the formatting information (including conditional formatting) from one cell to another? As described above, when we're filling in those cells, we want to apply the formatting from the start cell to all of the cells subsequently filled in.

Yes, when you copy a cell to some other cell using Cell.Copy() method, the formatting is also copied with the data. But, regarding conditional formatting, it is not copied and you need to call Worksheet.CopyConditionalFormatting() method and provide the valid parameters for the method for your need.

e.g.., Suppose we have A1 cell with cell shading / font styles and data. The cell also has conditional formatting too. So, we can copy the cell's shading/font styles formattings with data. For implementing conditionalformattings, we need to call the CopyConditionalFormatting() method for it.

Workbook excel = new Workbook("test.xlsx");
Cells cells = excel.Worksheets[0].Cells;
Cell cell1 = cells["A1"];
Cell cell2 = cells["A2"];
cell2.Copy(cell1);
excel.Worksheets[0].CopyConditionalFormatting(0, 0, 1, 0);
excel.Save("f:\\test\\output.xls");

Thank you.

Hi,

We provide an interface named InteropHelper for the C/C++ users to use the Aspose.Cells for .NET at ease. Please find attached the zip file containing the interface file (Aspose.Cells.Interop.dll) and its documentation file (Aspose.Cells InteropHelper Documentation.chm) for you need. You can find the general guidelines how to use Aspose.Cells for .NET in other languages e.g.., C/C++, PHP, Python using the InteropHelper interface.

Hopefully, it may help you.

Thank you.

The .chm file in this zip is only 25k. It has topics but no documentation. Wan you post a valid .chm file for the InteropHelper?

Hi,

Well, I am afraid, we provide this interface InteropHelper just for the sake of using the product in other languages especially for C/C++ although you may try to use the product directly by COM interoperability without using this interface.
There is no API reference available to it as it is not a part of our regular/original product and only provided for custom needs if required.

Please see the documents in the section for your complete reference on how to use the product in other languages and platforms:
https://docs.aspose.com/display/cellsjava/Utilize+Aspose.Cells+in+other+Programming+Languages

Thank you.