首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“运行时错误”53-文件找不到“其中文件名包括来自土耳其语的特殊符号。

“运行时错误”53-文件找不到“其中文件名包括来自土耳其语的特殊符号。
EN

Stack Overflow用户
提问于 2021-11-11 10:43:22
回答 1查看 71关注 0票数 0

我有一个Excel工作表,用于重命名和移动文件夹中的文件。当文档包含“普通”符号/字母时,此操作即可。然而,使用来自土耳其语的特殊符号(例如,Ğ,ğ,ş,),宏给了我

“运行时错误”53-文件未找到“。

我通常如何进行:

  1. I通过导入获取数据(文档名称和文件夹路径):“数据”-“获取数据”-“来自文件”-“从文件夹”

在执行导入时,Excel用土耳其字母标识名称。文件名与工作表中列出的文档名称相同。

  1. 我运行宏。

(列A=旧名称;B=扩展名;G=新名称;H= Folderpath)

  1. Excel根据脚本重命名前5个文件(没有特定土耳其符号的文档),然后停止重命名活动,并提示我输入错误消息。

如果Excel以正确的方式导入数据,为什么不在文件夹中找到文档?

我缩小了问题范围,我99%肯定是因为特殊的土耳其符号。当用随意字母替换几个文档时,宏总是重命名,直到再次出现土耳其字母为止。

代码语言:javascript
复制
Sub RenameAllFiles()
    With Application.FileDialog(msoFileDialogFolderPicker)
        .AllowMultiSelect = False
        If .Show = -1 Then
            selectDirectory = .SelectedItems(1)
            dDirectory = selectDirectory & Application.PathSeparator
            curRow = 2
            dFile = Cells(curRow, "G")
                                    
            Do Until dFile = ""
                 
                sFile = Cells(curRow, "A")
                sDirectory = Cells(curRow, "H")
                
                Name sDirectory & sFile As _
                     dDirectory & dFile
                
                curRow = curRow + 1
                
                dFile = Cells(curRow, "G")
            Loop
        End If
    End With

EN

回答 1

Stack Overflow用户

发布于 2021-11-11 12:15:25

将系统区域设置更改为“土耳其语”可能会有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69926931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档