Links to Excel break
Problem
You have a PowerPoint presentation that includes links to specific ranges of cells in an Excel worksheet.
You move the presentation and the workbook to another computer and, while PowerPoint can find the workbook, the links still don't work.
Solution
The problem might be that the worksheet was created on a German language version of Office but has been moved to an English language version. To quote PowerPoint MVP John Wilson, who identified this problem for a visitor to the PowerPoint section of Microsoft Answers:
If you look at the link address in English it ends R2C2:R5C5 The R & C stand for Row and Column - Row2,Column2 >>Row5,Column5 The German for Row is Zeile and for Column is Spalte So (not very clever of MSFT) in German the link ends Z2S2:Z5S5
John went on to provide some VBA code that will fix the problem. As always, it's best to run this sort of code on a COPY of your valuable presentations:
Sub G2E()
Dim regX As Object
Dim osld As Slide
Dim oshp As Shape
Dim b_found As Boolean
Dim strLink As String
On Error Resume Next
Set regX = CreateObject("vbscript.regexp")
With regX
.Global = True
.Pattern = "Z(\d)S(\d)"
End With
For Each osld In ActivePresentation.Slides
For Each oshp In osld.Shapes
Err.Clear
strLink = oshp.LinkFormat.SourceFullName
If Err = 0 Then
b_found = regX.Test(strLink)
If b_found = True Then
strLink = regX.Replace(strLink, "R$1C$2")
oshp.LinkFormat.SourceFullName = strLink
End If
End If
Next oshp
Next osld
Set regX = Nothing
End Sub
See How do I use VBA code in PowerPoint? to learn how to use this example code.