in previous versions of coreldraw, updating externally linked image/s is as easy as selecting the linked image/s in Link Manager, then pressing Update the selected out of date object.
however, i cant seem to do this anymore in x5. do i really have to update the linked images 1 by 1?
is there a way i can update linked images like on the previous version of coreldraw, ie x4?
ice said: in previous versions of coreldraw, updating externally linked image/s is as easy as selecting the linked image/s in Link Manager, then pressing Update the selected out of date object. however, i cant seem to do this anymore in x5. do i really have to update the linked images 1 by 1? is there a way i can update linked images like on the previous version of coreldraw, ie x4?
Hi.
I didn't test this but hopefully it should work for you.
It will update links in all bitmaps on page.
-John
Sub updateLinks() Dim s As Shape, sr As ShapeRange Set sr = ActivePage.Shapes.FindShapes(, cdrBitmapShape) For Each s In sr If s.Bitmap.ExternallyLinked Then s.Bitmap.UpdateLink End If Next sEnd Sub
ice said:can you pls give me a step by step procedure. i have no knowledge in programming.
Hi.,
You can assign a shortcut to it. See this page. Scroll down to the "How do you use the code" part.
can the code be modified to update only outdated linked images throughout the whole document, just like coreldraw x4?
ice said: thanks sir john for the help. can the code be modified to update only outdated linked images throughout the whole document, just like coreldraw x4?
Sub updateLinks() Dim s As Shape, sr As ShapeRange Dim p As Page Set sr = ActivePage.Shapes.FindShapes(, cdrBitmapShape) For Each p In ActiveDocument.Pages p.Activate For Each s In sr If s.Bitmap.ExternallyLinked Then If DateDiff("s", FileDateTime(s.Bitmap.LinkFileName), s.ExternalLinkTime) <> 0 Then s.UpdateLink End If End If Next s Next pEnd Sub
Sub updateLinks() Dim s As Shape, sr As ShapeRange Dim p As Page For Each p In ActiveDocument.Pages p.Activate Set sr = ActivePage.Shapes.FindShapes(, cdrBitmapShape) For Each s In sr If s.Bitmap.ExternallyLinked Then If DateDiff("s", FileDateTime(s.Bitmap.LinkFileName), s.Bitmap.ExternalLinkTime) <> 0 Then s.Bitmap.UpdateLink End If End If Next s Next pEnd Sub