Link to home
Start Free TrialLog in
Avatar of stevenvanheerden
stevenvanheerden

asked on

Word and Excel Problem

I have recently had Office 2013 installed, running on a Windows 7 system. I have a Word document that was created on earlier versions of Word (2010). The document is protected with a password and it contains 7 graphs which are linked to Excel spreadsheets. Once the graphs have been updated in Excel one could always update the graphs in the Word Document by selecting the “Update Link” button.  I have upgraded the Excel file containing the graphs to Office 2013 files. However trying to update the Word document to a new file with a new file name in Word 2013 seems impossible. The updated file does not save and one is returned to the dialogue box from which you saved the file. One can see the updated Word file name in the dialogue box but when, at later stage, you try and open the updated Word file, it is empty. After the first attempt to open the updated Word file, it disappears altogether.
ASKER CERTIFIED SOLUTION
Avatar of John
John
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Hi stevenvanheerden  

I've had a similar issue in Wd 2010 - it refuses to save, can't even use save as... For me the problem was always related to Custom XML Parts...  

If you can reproduce the error reliably then a fix might become more likely.  I'd start with checking to see if there is any Custom XML and if so deleting it.

Another issue that I had caused document corruptions but did not prevent saving was when Word inadvertently allowed content controls to be nested in an unsupported way.  e.g. you can put a plain text content control inside a rich text content control but if you manage to do it the other way around expect trouble...
This will list your custom xml files... you can run it on a document before and after you make changes..  I've commented out the delete line...

Sub cleanDeadXML()
' PURPOSE: Delete XML duplicates and Empty files from this
'          document.

On Error GoTo eh

Dim iXML As Integer
Dim iXML_dupe As Integer
Dim sXML As String
Dim cXML As CustomXMLParts

Debug.Print ThisDocument & " has " & ThisDocument.CustomXMLParts.Count & " XML parts"

Restart:

For iXML = ThisDocument.CustomXMLParts.Count To 1 Step -1
    If Len(ThisDocument.CustomXMLParts(iXML).NamespaceURI) < 1 Then
        Debug.Print "Delete: " & iXML
        ThisDocument.CustomXMLParts(iXML).Delete
    Else
        sXML = ThisDocument.CustomXMLParts(iXML).NamespaceURI
        Set cXML = ThisDocument.CustomXMLParts.SelectByNamespace(sXML)
        Debug.Print "Part: " & iXML & " " & sXML
        If cXML.Count > 1 Then
            For iXML_dupe = cXML.Count To 2 Step -1
                Debug.Print "Delete duplicate XML Part: " & sXML & "(" & iXML_dupe & ")"
''                cXML(iXML_dupe).Delete
            Next iXML_dupe
            Debug.Print "Restarting... "
            GoTo Restart ' Else, deleting duplicates will result in a subscript out of range error
        End If
    End If
Next iXML

lbl_Exit:
    Set cXML = Nothing
    Exit Sub

End Sub

Open in new window

@stevenvanheerden  - Thank you and I was happy to help.