External file references revisited

…except for image heights Smile

When you check out the attached Sample.xls, you will notice on Sheet 2 that images are too high. When you compare this to the Envelope.xls of my previous post, you will notive that the images on Sheet 2 should not be that high.

Regards

Kai

Hi Kai,

I fixed this issue in V3.3.3. Please download and try it.

Laurence,

I have downloaded the latest version and checked it. Works just fine now.

However, the latest version seems to have introduced an issue with AddCopy() (possibly in conjunction with images on the source sheet).

When you open the attached file (in Aspose.Excel) and do a

excel.Worksheets[excel.Worksheets.AddCopy(0)];
excel.Save(filename, FileFormatType.Excel97);

The Save method throws an Exception

Thanks for your help

Kai

Hi Kai,

Thanks for your report. Yes. It’s caused by copying images. Now I fixed it. Please try this attached dll.

Hi Laurence,

getting close to perfection. Now I found another of our projects that seems to be failing.

What it does is

- Load the TemplateDisclaimer.xls
- Place a GIF image at A1
- Populate the sheet

Attached are an example where it works (Fundsdata-Correct.xls) and the very same created using the new version; that one fails (Fundsdata-Error.xls)

Regards

Kai

Hi Kai,

Please try this fix.

Laurence,

yes, this one does it. All of my projects are running smoothly now.

Thanks very much for your continued support

Regards

Kai

Laurence,

here we go again Big Smile

I have just noticed that external references fail if the referenced file contains spaces.

Also, what is your estimation on supporting cross workbook copying of conditional formatting?

Thanks very much in advance

Kai

I fixed external references bug in this attached fix. And copying conditional formatting is also supported now.

Laurence,

this sounds great to me, but what’s the method I’m supposed to call to copy conditional formatting between sheets of different workbooks?

Regards

Kai

When you calling Worksheet.Copy method, the conditional formatting in source worksheet is copied to the destination worksheet.

I see. So the method would be to first Worksheet.Copy() the source sheet, clear contents and then manually copy over formulas and “patch” them to be correct externel reference formulas?
Or would there be an easier way to accomplish this?

Regards

Kai

Now the feasible way is copying other contents first and then manually setting external reference formulas.

Maybe in the future version, we will provide a new method: Worksheet.Copy(Worksheet sourceSheet, string sourceFileName). But external reference is complex and we are still investigating it, so it will take a little more time.

This is exactly what I have tried and this works like a charm.

Great stuff, thanks again for the great and fast support

Regards

Kai