|
楼主 |
发表于 2020-7-1 18:18
|
显示全部楼层
我有名称不改,路径如果有更改的代码,有需要的可以用,已测试是可以的。哪位大神提供一下路径,文件名都更改的代码?
路径变更代码如下:
Sub RefreshSource()
Dim wbQ As Queries
Dim strPath As String
Set wbQ = ThisWorkbook.Queries
For i = 1 To wbQ.Count
If InStr(wbQ.Item(i).Formula, "File.Contents(""") > 0 Then
'获取文件地址
strPath = Split(Split(wbQ.Item(i).Formula, "File.Contents(""")(1), """")(0)
'拆分出文件夹地址
strPath = Left(strPath, InStrRev(strPath, "\") - 1)
ElseIf InStr(wbQ.Item(i).Formula, "Folder.Files(""") > 0 Then
'获取文件夹地址
strPath = Split(Split(wbQ.Item(i).Formula, "Folder.Files(""")(1), """")(0)
End If
'替换formula中的地址为当前文件所在的文件夹地址
wbQ.Item(i).Formula = VBA.Replace(wbQ.Item(i).Formula, strPath, ThisWorkbook.Path)
Next
If strPath <> "" Then
MsgBox "已更新数据源文件的路径为当前文件夹所在的文件夹。" & vbCrLf _
& ThisWorkbook.Path, vbInformation + vb0K0nly, "提示信息"
Else
MsgBox "未检测到可以更改的文件路径。", vbExclamation + vb0K0nly, "提示信息"
End If
End Sub |
|