Any chance adding/modifying one worksheet in a workbook can modify/corrupt other worksheets?


#1

I am evalutating Aspose.Cells for use in our web application. Probably the most demanding aspect of this potential application of Aspose.Cells is that I need to take an existing workbook and either insert a new worksheet or overlay new data into a single existing worksheet. It is crucial that only the worksheet being operated on is impacted, leaving all other worksheets unaltered across every possible Excel feature they may be using. I am assuming that there are no existing dependencies in the untouched worksheets on the worksheet that I’m writing, though it is possible that the worksheet that I am altering my contain references to other worksheets in the workbook… I presume I’ll be deleting any such references as they would be incompatible with the data I’m writing to the worksheet.

Are there any other issues I should be aware of as I evaluate Aspose.Cells for use in this product?

Thank you very much for your prompt assistence as I must make a call on this ASAP (our product feature freeze is one week from today, so I can’t spend much time in this evaluation).

-Marc


#2

Hi Marc,

Do you mean the following?

1. You want to import an Excel file.

2. You will add a new worksheet to this file or change data on one of cell.

3. You hope that other worksheets are untouched.

Aspose.Cells for .NET can serve your need on this scenario. And to make this works, you should delete references across worksheets as you described.


#3

Actually, my work consists of two functional elements:

1 - Import data from a user-specified worksheet within a workbook file. I believe I’ve already got this working with the eval version of Aspose.Cells. It was very simple, and since its a read-only operation, no risk to the workbook file here, and the import requires VERY simple functionality.

1a - which leads me to one question… is there a way I can ensure all formulas are recalculated, so the data in the cells from which I am importing includes current values for any computed or linked cells?

2 - Export data from our application into either a new workbook, which is easy and already works, or an existing workbook to a specific worksheet within that workbook. Its this last case that is our area of concern, primarily because competing products state right up front that they do not support all Excel features… and if we write to a workbook containing unsupported (in the competitor’s tool), then ALL unsupported elements are lost even if on worksheets we’re not touching.

I should mention that I haven’t found anything indicating Aspose.Cells does not support any elements of Excel? If this is indeed the case, then there is no issue here.


#4

1. When you import data with eval version, there is an eval limitation. Please check http://www.aspose.com/wiki/default.aspx/Aspose.Cells/Licensing.html .

When Aspose.Cells is licensed, it will be removed.

1a - you can call Excel.CalculateFormula before you retrieving data. Not all functions are supported with CalculateFormula method. Please check http://www.aspose.com/Products/Aspose.Cells/Api/Aspose.Cells.Excel.CalculateFormula1.html for supported list.

If you find some functions are important to you but not supported in Aspose.Cells, please let me know. I will add them soon.

2. We will preserve all elements in your template files.


#5

From your answers, I believe we are in good shape. The CalculateFormula call sounds terrific, though it will be hard to know when it will work and when it will fail as the workbooks being used as input are coming from customers, so they will use whatever functions they happen to use. Is there at least a clearly identifiable exception thrown should they import from a workbook using unsupported functions so I can catch that condition?

As an aside, I am very excited to have to opportunity to work with the Aspose.Cells product as my initial experience during this evaluation has been extremely positive, both with the product AND with the support I’ve received.


#6

Thank you.

For CalculateFormula method, you can call it after you import Excle file and before retrieving data from it. If you don't change anything in this Excel file before you retrieve formula results, you don't need to call this method.

If some functions are not supported, Aspose.Cells will return the result in Excel files. These result may not be updated. Aspose.Cells won't throw exceptions. It only throw exceptions when meet invalid formulas.

To solve this problem, you can:

1. Tell me those unsupported functions, we will make it in the future release.

2. You can make your own implement for those functions. Aspose.Cells provides an interface to extend this method.