ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Unlink graphics in VBA (https://www.excelbanter.com/excel-programming/314325-unlink-graphics-vba.html)

Jan

Unlink graphics in VBA
 
Dear all,

Does anybody know how I can break links (coming from excel graphics)in word
using VBA in excel?

I have a macro which opens a word document, then removes the links to word
(except the graphs links) and save the word document.

the following solutions did not help me:
ActiveDocument.Fields.Unlink

Sub RemoveLinks()
Dim aField As Object

For Each aField In ActiveDocument.Fields
aField.LinkFormat.BreakLink
Next aField

End Sub


thanks,
Jan


John Mansfield[_2_]

Unlink graphics in VBA
 
If you want to break the links before loading the chart
into word, you can use a macro similar to the following:

Sub BreakChartLinks()
For Each X In ActiveChart.SeriesCollection
X.Values = X.Values
X.XValues = X.XValues
X.Name = X.Name
Next X
End Sub

Another option is to save an embedded chart as a picture
and then bring the picture into Word. In Excel, hit the
Shift - Edit keys (both at the same time) and then go to
Copy Picture. You can paste it into the Word Document.

Or, a better solution to export the chart as a graphic
would be to use John Walkenbach's J-Walk Chart Tools add-
in. The add-in can be found at http://www.j-walk.com/ss.


-----Original Message-----
Dear all,

Does anybody know how I can break links (coming from

excel graphics)in word
using VBA in excel?

I have a macro which opens a word document, then removes

the links to word
(except the graphs links) and save the word document.

the following solutions did not help me:
ActiveDocument.Fields.Unlink

Sub RemoveLinks()
Dim aField As Object

For Each aField In ActiveDocument.Fields
aField.LinkFormat.BreakLink
Next aField

End Sub


thanks,
Jan

.


Jan

Unlink graphics in VBA
 
John,

See below my macro for opening a word document, read and save it.

You see the code 'ActiveDocument.Fields.Unlink' for unlinking the excel
cells. Now I have to this also for my excelcharts in word who have a link to
excel. The code you proposed did not work.

Do you have another idea?
Thanks,
Jan


Sub OpenAndReadWordDoc(i As String)
Dim wrdApp As Word.Application
Dim wrdDoc As Word.Document
Dim tString As String, tRange As Word.Range
Dim p As Long, r As Long
Set wrdApp = CreateObject("Word.Application")
wrdApp.Visible = True
Set wrdDoc = wrdApp.Documents.Open("D:\Survey04\Chapter 6 with links.doc")
ActiveDocument.Fields.Unlink

With wrdDoc
.SaveAs ("D:\Survey04\Chapter 6 \" & i & ".doc")
.Close ' close the document
End With

wrdApp.Quit ' close the Word application
Set wrdDoc = Nothing
Set wrdApp = Nothing
ActiveWorkbook.Saved = True
End Sub


"John Mansfield" wrote:

If you want to break the links before loading the chart
into word, you can use a macro similar to the following:

Sub BreakChartLinks()
For Each X In ActiveChart.SeriesCollection
X.Values = X.Values
X.XValues = X.XValues
X.Name = X.Name
Next X
End Sub

Another option is to save an embedded chart as a picture
and then bring the picture into Word. In Excel, hit the
Shift - Edit keys (both at the same time) and then go to
Copy Picture. You can paste it into the Word Document.

Or, a better solution to export the chart as a graphic
would be to use John Walkenbach's J-Walk Chart Tools add-
in. The add-in can be found at http://www.j-walk.com/ss.





All times are GMT +1. The time now is 01:34 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com