Is there a macro that would seek out all symbols in a document and revert them all to objects? I believe the symbols are really bogging down my file and there are too many at this point to find them. Thanks.
Are these supposed to jump to each page?
no only on current page
for all pages on active document try code below
Sub RevertSymbolsToObjects()Dim sh As ShapeRange, s As Shape, dp As PageActiveDocument.BeginCommandGroup ("RevertToOjects")For Each dp In ActiveDocument.Pagesdp.ActivateSet sh = ActivePage.Shapes.FindShapes(Type:=cdrSymbolShape)For Each s In shs.Symbol.RevertToShapesNext sNext dpActiveDocument.EndCommandGroupEnd Sub
I'm trying this now. I'm assuming it working because as I said on another comment. Each instance to convert could take a few minutes. I started this macro almost an hour ago and my document is still locked up.
Edit: Lol! Task manager is showing CorelDraw is utilizing 30GB of ram now.
Do you have a file that you would be willing to share? Either on the forum, or to send to me privately?
I find this interesting, and it would be easier to look at if I already had a file that "exhibits the problem".
I wish I could but my company would most likely have an issue with it.
Thanks; I understand.
I had to stop the operation by the way. It was going on for about an hour and a half and I had to do some more work. I'll try it again when my day is over.
I cannot guarantee success, but you might try this:
Sub RevertSymbols_active_page() Dim p As Page Dim s As Shape Dim sr As ShapeRange On Error GoTo ErrHandler ActiveDocument.BeginCommandGroup "revert symbols" EventsEnabled = False Optimization = True Set p = ActivePage Set sr = p.Shapes.FindShapes(Query:="@type = 'symbol'") For Each s In sr.Shapes s.Symbol.RevertToShapes Next s ExitSub: Optimization = False EventsEnabled = True ActiveDocument.EndCommandGroup Exit Sub ErrHandler: MsgBox "Error occurred: " & Err.Description Resume ExitSub End Sub
That only reverts symbols on the current page, but I would try that first before moving on to a "do this for all pages" version (or perhaps a "do this for the next 5 pages" version, or...).
I'm not sure I understand. How is that different than the 2nd one Mek posted?
EventsEnabled = FalseOptimization = True
Those can make some things a bit faster.
This worked on a single page.
Was it still super-slow to process that one page?
If I might ask, how many pages does your document have?