Load Excel with embedded Word and modify Word

Hello,
so the .AutoLoad property also update the image somehow?
In my test with the new DLL the word content is up to date, shows the correct data. So the problem seems to be fixed with this. Thank you.

Is the any glitch or problem I can run into now? Or does the new method exactly what I need, update the preview of the embedded OLE content?

Hi,


Yes, I think the new Dll (with OleObject.AutoLoad attribute) will serve your needs, so you may use it for your requirements. And, feel free to contact us if you need our further help or have any issue or comments, we will be happy to assist you soon.

Thank you.

I implemented this and everything works as intended.
With Aspose you can now modify Word OLE objects in Excel and auto Update.
I even wrote some methods to migrate thousands of Excel documents to a new layout with replacing all headers (OLE object Word) with a new one.

This is by the way now a pretty cool feature that no one else can, good job guys!

Question: Can you crosscheck the auto-update handling for Visio and PowerPoint, too? If not available there, implement it there too, this would make it possible to embed Word there too to add functionalities in those document which aren’t working for us now at the moment (e.g. Form fields).

Hi Yves,


In reference to the Aspose.Diagram API. There is no way to auto refresh the preview of embedded objects. We’ve logged an investigation under ticket id DIAGRAMNET-50789 in our internal tracking system. We’ll keep you informed regarding any available updates. We’re sorry for the inconvenience caused.

Hello,
but PowerPoint seems to have already such a feature or is .UpdateAutomatic = true something differnent in Slides?

Hi Yves,

I have read your comments regarding UpadteAutomatic property in Aspose.Slides. This property holds for automatic updation of Linked Ole object. I suggest you to please visit this documentation link in this regard for more information.

For your case concerning to automatic update of preview of embedded Ole objects when viewed in Aspose.Slides generated presentation, I like to share that an issue with ID SLIDESNET-37524 has been added in our issue tracking system as new feature request to investigate the possibility of implementing requested support. However, I like to add further here that preview image is usually set for Ole frame in disabled form to avoid Red “Embedded Object” image. When you double click on the Ole object inside generated presentation, it gets enabled and represent the preview of actual Ole data. In order to achieve this, I suggest you to please try exploring the options of using third party macros that are added in presentation and whose job is to enable the Ole objects whenever the presentation is loaded using PowerPoint. This way, you will always have a realtime preview of the Ole object. I hope this will be helpful.

Many Thanks,

Hello,
thank you for your detailed answer!
You approach won’t work for me because:
- I do embed a Word inside the PowerPoint.
- The word contains FormFields (e.g. Title, Revision, ChangeDate)
- I load the PowerPoint, load the Word, update the FormFields, store the Word in PowerPoint again and then save the PowerPoint document.

So far you approach could work, but I need also create a PDF document, therefor I save_as PDF and the preview image needs to be updated before.
The Excel team added a auto update function (see above) that’s why I thought we could do the same in PowerPoint.

Hi Yves Rausch,

I have further observed your requirements and in the case of PDF generation for opened presentation, the suggested option will not hold. I suggested a work around approach that would serve the purpose for you. The added ticket will be able to accomplish the goal on your end once the support will be available. Under current circumstances, the available option is to get the image of modified word file embedded as Ole object and set that as image of Ole frame before generating the PDF. We will share the notification with you as soon as the support will be available.

Many Thanks,

Hi Yves,


In reference to the ticket id DIAGRAMNET-50789, there is no way to auto refresh the content of an OLE object in Microsoft Office Visio by design. Aspose.Diagram API mimics the behavior of Microsoft Office Visio. As a workaround, you might convert a word to image and insert that image in Visio diagram. Later, you may replace this image with its modified version. Using Aspose.Diagram API, you can insert a new image or replace an existing image. Please refer to these help topics: Insert an Image in Visio and Replace an Image in Visio

Please let us know in case of any confusion or questions.

PS: If you know any option to refresh an OLE object using Microsoft Office Visio, then please let us know.

The issues you have found earlier (filed as CELLSNET-44482) have been fixed in this update.


This message was posted using Notification2Forum from Downloads module by Aspose Notifier.

Hi,

Thanks for your posting and using Aspose.Cells.

OleObject.AutoLoad property actually asks Microsoft Excel to reload/update the Ole object when the file is opened in Microsoft Excel. So Aspose.Cells do not AutoLoad the Ole object, it just changes some inner properties of the excel file which tells Microsoft Excel to reload the Ole object while opening it. This is the reason this property works when you save your workbook in excel formals like xls, xlsx etc but when you save it in Pdf format, this property is of no use.

Regarding your other issue, it is also not related to Aspose.Cells. Just create any excel file using Microsoft Excel and then upload it on internet and download it again and when you will open it, Microsoft Excel will open it in protected mode and prompt you to click Edit Document button. If you don’t want it, then this behavior can be controlled via Microsoft Excel Options/Settings. I have attached the screenshot for your reference.

Regarding the Excel Setting document protection I was aware of it. Just mentioned it as it address the same issue.

So in fact AutoLoad do not solve the issue for me. I was mislead earlier then in this thread.
So does this mean I have to work on the workaround mentioned above and create my own image? Or any chance Aspose component does this for me as default feature?

Hi,

Thanks for your posting and using Aspose.Cells.

We are sorry for the inconvenience. Actually, Aspose.Cells cannot do anything. Because when you insert any object like image or pdf as Ole Object, Microsoft Excel generates an image of it by itself and then display that image. It generates the image using some other application. Suppose, you insert pptx inside excel file using Microsoft Excel, then Microsoft Excel requests Microsoft PowerPoint to generate the image of it and then display that image. In other words, Microsoft Excel generates image with the help of other applications. But when you work on server side, you cannot use Microsoft Excel or Microsoft PowerPoint to generate an image of your object. You will then have to generate it yourself using Aspose.Cells APIs and then use that image.

Please see this article for more explanation how this works and why you have to generate the image yourself.

( Automatically refresh OLE object via Microsoft Excel using Aspose.Cells|Documentation )

Please see these images



Nervermind :slight_smile:
I implemented as suggested a WordToImage, fast TrimImage to crop white spaces in my project and now I render the preview image for word documents myself.

I was just misleaded as the former reply mentioned that AutoLoad solves my problem.

@rausch

Thank you and have a good day. :slight_smile:

@rausch,
In reference to the linked ticket ID DIAGRAMNET-50789, there is no way to refresh OLE object data in the Microsoft Visio application and Aspose.Diagram API mimics the behavior of the Microsoft Visio application. As a workaround, you can replace OLE object of the Word document as narrated in this help topic: Replace an OLE Object in the Visio drawing

Is there meanwhile a new way to update the preview image of an embedded Word in Excel or Visio?
I render the picture myself but this code is still a workaround…

@rausch,

In perspective to the Aspose.Diagram API, there is no new way. You will have to replace the OLE object. Our colleague @shakeel.faiz has explained the behavior of the Microsoft Excel application. Please note, Aspose.Cells and Aspose.Diagram APIs mimic the behavior of the Microsoft Excel and Microsoft Visio applications respectively. We will let you know if there is any other way round.

I did implement the behavior you suggested and it works nice.
But I think you should implement this as standard/defaults to make smoother to use…

All Office products support OLE embedded objects, and in case of Word embedded in Excel, PowerPoint, Visio there should be implemented way to render the preview image (with property resolution) to update OLE object and preview. This would mimic this even more and better.

@rausch,

In reference to the Aspose.Cells API, we have added support of auto refreshing the preview of OLE object. You can change the image of OLE object, and Aspose.Imaging API can help you to set the image resolution. Please refer to these help topics: Managing OLE Objects and Manipulating PNG Images

We are gathering details regarding the Aspose.Diagram and Aspose.Slides APIs, and will let you know soon.