我想将PowerPoint演示文稿图表中的链接转移到另一个文件夹。找到一些代码,但它只选择特定文件来更改链接,而不是文件夹,我无法使用,因为我的PowerPoint链接到两个不同的Excel文件(在同一个文件夹中)。
Sub M1()
Dim sld As Slide
Dim sh As Shape
Dim strNms As String
Dim intI As Integer
Dim strNewPath
Dim ExcelFile
Dim exl As Object
Set exl = CreateObject("Excel.Application")
'Open a dialog box to promt for the new source file.
ExcelFile = exl.Application.GetOpenFilename(, , "Select Excel File")
For Each sld In ActivePresentation.aSlides
For Each sh In sld.Shapes
If sh.Type = msoLinkedOLEObject Then
With sh.LinkFormat
strNms = .SourceFullName
intI = InStr(1, strNms, "!")
strNewPath = ExcelFile & Mid(strNms, intI, Len(strNms) - intI + 1)
.SourceFullName = strNewPath
End With
End If
Next sh
Next sld
End Sub
答案 0 :(得分:1)
看看这里的代码:
批量搜索和替换超链接,OLE链接,电影链接和声音链接 http://www.pptfaq.com/FAQ00773_Batch_Search_and_Replace_for_Hyperlinks-_OLE_links-_movie_links_and_sound_links.htm
例如,它会让您替换链接文件的路径(即不同的文件夹名称),但不会更改链接文件的名称。重要提示:在运行代码之前,您必须将文件重新链接到您尝试重新链接到的文件夹中。如果您更改指向不存在的文件的链接,PPT会对您微笑并说出" OK"但它不会改变任何东西。