首页 > 解决方案 > 如何使用 VBA 打开多个受密码保护的 excel 文件并将受密码保护的文件中的数据复制并粘贴到另一个工作表中

问题描述

所以在我的工作表中,我有一个包含文件名、文件路径和与文件关联的密码的表。

我希望能够通过插入相关密码来自动打开所有这些文件,复制这些文件中的所有数据并将它们粘贴到我的名为 Output 的文件中的另一个工作表中并关闭它们。

我给列 (N) 提供了我的文件名命名范围:文件名我给列 (O) 提供了我的每个文件的路径命名范围:路径我给列 (P) 有我的每个文件的密码命名范围:密码

到目前为止,这是我的代码:

Public Sub OpenPwdProtFiles()


ict = 0
Set FileNames = Range("Filenames")
Set paths = Range("Paths")
Set passwords = Range("Passwords")
Set CornerCell = Range("CornerCell")

For Each Filename In FileNames
    ict = ict + 1
    If Filename.Text <> "" Then
        Filename.Copy
        mypath = paths.Item(ict).Value
        mypwd = passwords.Item(ict).Value
        'Open workbook mypath, fname, password
        'Copy contents
        'Move down to latest unpopulated row on Output tab and paste
        Set cell2paste = CornerCell
        OutputSheet.Activate

        cell2paste.xlDown.Offset(1, 0, 0, 0).PasteSpecial xlPasteValues
    End If
Next



End Sub

我的 OutputSheet.Activate部件有问题,因为它一直说需要对象,但我不知道该怎么做,因为我已经做了一段时间了,因为我已经做了一些 VBA 编码。因此,如果有人可以帮助我,我将不胜感激

标签: excelvbaautomationpassword-protection

解决方案


推荐阅读