Free Support Forum - aspose.com

ActiveX control is missing from worksheet after original workbook saved to a new .xlsx file

We have added activeX control, i.e. activeX buttons on worksheet. However, after save/export to a new .xlsx workbook, the control is missing. Here are steps:

1. Please see attached original .xlsx file: activeXButton.xlsx, unzipped and open the openXML packet, you will see it contains \activeXButton\xl\activeX\ folder.

2. I read original.xlsx to aspose workbook object, then save it to a new file by calling

asposeUpdatedWorkbook.setFileName ("activeXButtonAfterCopy.xlsx")

3. Open the attached activeXButtonAfterCopy.xlsx, you will see there is no any activeX control information there.

I understand aspose.cells does not fully support activeX controls, however, by just doing a save/export operation, why the original activeX controls got dropped during that operation?

Please advise about it, thank you.

Hi,

Thanks for your posting and using Aspose.Cells.

We have saved your file into another file to check the activex control button. It does not have any effect on the output file. Below is our sample code. If you still find any problem, please provide us your sample project replicating your issue. We will look into it and help you asap.

We have also attached the output file for your reference.

Please also download and try the latest version: Aspose.Cells
for .NET v7.4.3.1


C#


string filePath = @“F:\Shak-Data-RW\Downloads\activeXButton.xlsx”;


Workbook workbook = new Workbook(filePath);

workbook.Save(filePath + “.out.xlsx”, SaveFormat.Xlsx);


Sorry, I didn't provide more accurate details here, the problem happens after I copy from one aspose workbook to another workbook, then save the newly copied workbook, the activeX controls all dropped. Here is the code:

_asposeOrigWorkbook = createAsposeWorkbook(resource.getExcelStream());

_asposeUpdatedWorkbook = new Workbook();

_asposeUpdatedWorkbook.copy(_asposeOrigWorkbook);

_asposeOrigWorkbook.save("c:\\testOrig.xlsx");

_asposeUpdatedWorkbook.save("c:\\testCopied.xlsx");

If you open both "c:\\testOrigxlsx" and c:\\testCopied.xlsx" , you will see one contains the activeX controls, the other not.

Why "copy" can not keep the source activeX control information? Please help with that.

Hi,


I have tested your case with our latest version/fix and it works fine. Please download and try our latest fix/version: Aspose.Cells for Java v7.4.3.1

Here is my sample code with your attached template file and please find attached the output files for reference.

Sample code:

Workbook _asposeOrigWorkbook = new Workbook(“e:\test2\testOrig.xlsx”);

Workbook _asposeUpdatedWorkbook = new Workbook();

_asposeUpdatedWorkbook.copy(_asposeOrigWorkbook);

_asposeOrigWorkbook.save(“e:\test2\testOrig1.xlsx”);

_asposeUpdatedWorkbook.save(“e:\test2\testCopied1.xlsx”);

The “testCopied1.xlsx” does contain the ActiveX control.

Thank you.

Thank you. I have replaced aspose.cells jar by using your attached 7.4.3.1 version, however, the problem still exists. Here are my code:

_asposeOrigWorkbook = generateAsposeWorkbookDraft(is);
_asposeUpdatedWorkbook = new Workbook();
_asposeUpdatedWorkbook.copy(_asposeOrigWorkbook);
_asposeOrigWorkbook.save("c:\\orig.xlsx");
_asposeUpdatedWorkbook.save("c:\\copied.xlsx");

The orig.xlsx contains 3 activeX buttons, but the copied.xlsx doesn't contain buttons. Please advise about it.

Thanks a lot.

Hi,


I have tested with your new template file and it works fine here. The output file does have ActiveX controls as per the original file. Here is my sample runnable code that I am using and I have attached my output files for your reference.

Sample code:

Workbook _asposeOrigWorkbook = new Workbook(“e:\test2\orig.xlsx”);

Workbook _asposeUpdatedWorkbook = new Workbook();

_asposeUpdatedWorkbook.copy(_asposeOrigWorkbook);

_asposeOrigWorkbook.save(“orig1.xlsx”);

_asposeUpdatedWorkbook.save(“copied1.xlsx”);

Please try my sample code and check the output files.


By the way, I have a doubt for your line of code:
"_asposeOrigWorkbook = generateAsposeWorkbookDraft(is);"

I am not sure how you are getting the file into stream etc. Could you give us your runnable code to evaluate your issue more precisely on our end.

Thank you.

Amjad,

I have used the exact same code as you provided, no, it still not solving problem, buttons got dropped in copied1.xlsx.

I am using the aspose-cells-7.4.3.1.jar. Just a very simple code test as you provided.

Any setting cause?

Thanks. Irene

Hi,


This is strange as you still got the issue even using my sample code. Could you open my attached output file and check if it is ok. To me, it is fine.

By the way, please download our latest Aspose.Cells for Java version v7.4.3:
http://www.aspose.com/community/files/72/java-components/aspose.cells-for-java/entry461181.aspx

Now unzip the archive to your specified location/folder, now set all the other jars into your class path from the release archive.

Let us know if you still find any issue.

Thank you.

7.4.3.1 actually is working now, thank you very much.

Hi,

Thanks for your feedback.

We are pleased to know that the latest version is working fine for you. If you encounter any other problem, please feel free to post, we will be glad to help you further.