Excel密码和雕刻标签名称

标签 excel vba

我正在设置一个宏以打开目录中的所有文件并将每个选项卡中的某个选项卡复制到一个组合文件中(将它们合并到一个工作簿中)。我有两个问题。首先,文件受密码保护 - 所以当我使用这一行时,它会打开文件。

Set gwkbInputdata = Workbooks.Open(gRnCT_File_Loc & gsInputFileName)

但是,当它受密码保护时,它会失败。所以我在最后添加了以下内容,但它仍然失败。
Set gwkbInputdata = Workbooks.Open(gRnCT_File_Loc & gsInputFileName),Password = "openfile"

第二个问题 - 当我复制标签(工作表)时,我想用我从中获取它们的文件名来命名它们。但是文件名太长 - 所以我想把名字放在第一个空格(例如“测试文件 5 月 13 日”=工作表名称“测试”)。我如何让这段代码工作。

非常感谢任何帮助。

完整代码如下:

* gRnCT_File_Loc = 目录位置。
*
gsInputFileName = 文件名。
Code to date:

Sub Pulldata()

Application.ScreenUpdating = False
Application.DisplayAlerts = False

Set gRwksconfigeration = Sheets(gcsConfigSheetName)
gRnCT_File_Loc = gRwksconfigeration.Range(CT_File_Loc)
gRnCT_Tab_Search = gRwksconfigeration.Range(CT_Tab_Search)
gsInputFileName = Dir(gRnCT_File_Loc)
Set gwkscurrent = ActiveWorkbook

For Each ws In ThisWorkbook.Worksheets
       If ws.Name <> gcsConfigSheetName Then ws.Delete
Next ws

Do
    On Error GoTo err:
        Set gwkbInputdata = Workbooks.Open(gRnCT_File_Loc & gsInputFileName)
    On Error GoTo 0

    On Error GoTo err1:
        With Sheets(gRnCT_Tab_Search)
    On Error GoTo 0

        End With

gsInputFileName = Dir
Loop Until gsInputFileName = vbNullString

Application.ScreenUpdating = True
Application.DisplayAlerts = True

Exit Sub

err:
    MsgBox ("No files or files in incorrect format in " & gRnCT_File_Loc)
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
    Exit Sub
err1:
    MsgBox ("Sheet " & gRnCT_Tab_Search & " doesn't exist in file " & gsInputFileName)
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
    Resume Next

End Sub

最佳答案

对于关于获取文件名第一部分的第二个问题,请尝试:

if(instr(gsInputFileName," ") > 0
   then short_file_name=left(gsInputFileName,instr(gsInputFileName," ")-1)
   else short_file_name=gsInputFileName
   endif

关于Excel密码和雕刻标签名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16340559/

相关文章:

vba - Application.Undo 调用 Worksheet_Change - 我不想要这个

更新自动过滤器 oncellchange 时 Excel 崩溃

excel - 重复范围第 N 次

python - 读取 Excel 文件时,将每列中的前两个条目合并为标题

api - Excel VBA : Schedule cell calculation

VBA 插入 .csv 不起作用

excel - 在vba excel中循环遍历多维数组

vba - 根据匹配 ID 复制并粘贴信息,其中一张表在数据透视表中包含行

excel - 如何根据上面的单元格设置单元格格式?

javascript - 如何在 PHP 中启用 ZipArchive?