羽叶老师 2023-03-27 17:11 采纳率: 0%
浏览 16

关于#VBA#的问题:最近在 vba 做自动化测试,然后现在需要修改每一本excel的参照,有没有可以统一修改的方法啊(-

最近在 vba 做自动化测试,然后现在需要修改每一本excel的参照,有没有可以统一修改的方法啊。因为后续可能需要经常这样操作。

  • 写回答

1条回答 默认 最新

  • xia0xin 2023-03-27 23:56
    关注

    可以通过 VBA 代码批量修改每个 Excel 文件的参照。以下是一些示例代码,可以帮助你开始:

    修改所有打开的工作簿的参照

    Sub ChangeRef()
        Dim wk As Workbook
        For Each wk In Workbooks
            '修改参照代码
            wk.ChangeLink "oldPath", "newPath", xlExcelLinks
        Next wk
    End Sub
    
    
    

    修改一个指定文件夹内所有工作簿的参照

    Sub ChangeRefInFolder()
        Dim fs As Object, f As Object, wb As Workbook
        Dim folderPath As String, oldPath As String, newPath As String
        
        '指定文件夹路径
        folderPath = "C:\Users\UserName\Desktop\TestFolder\"
        
        '指定旧路径和新路径
        oldPath = "C:\OldPath\"
        newPath = "C:\NewPath\"
        
        Set fs = CreateObject("Scripting.FileSystemObject")
        Set f = fs.GetFolder(folderPath)
        For Each f In f.Files
            If Right(f.Name, 4) = "xlsx" Then
                Set wb = Workbooks.Open(f.Path, UpdateLinks:=False)
                '修改参照代码
                wb.ChangeLink oldPath, newPath, xlExcelLinks
                wb.Close SaveChanges:=True
            End If
        Next
    End Sub
    
    
    

    这些代码可以根据你的具体需求进行修改。注意,在修改参照之前最好先备份原始文件,以免发生不可预知的问题。

    评论

报告相同问题?

问题事件

  • 修改了问题 3月27日
  • 修改了问题 3月27日
  • 创建了问题 3月27日

悬赏问题

  • ¥500 服务器搭建cisco AnyConnect vpn
  • ¥15 用大厂网站防红自己网站
  • ¥15 悬赏Python-playwright部署在centos7上
  • ¥15 psoc creator软件有没有人能远程安装啊
  • ¥15 快速扫描算法求解Eikonal方程咨询
  • ¥20 我的是道格手机,重置后屏幕右上角出现红色字的未写入tee key 和未写入google key请问怎么去掉啊
  • ¥15 校内二手商品转让网站
  • ¥20 高德地图聚合图层MarkerCluster聚合多个点,但是ClusterData只有其中部分数据,原因应该是有经纬度重合的地方点,现在我想让ClusterData显示所有点的信息,如何实现?
  • ¥100 求Web版SPC控制图程序包调式
  • ¥20 指导如何跑通以下两个Github代码