Добрый день.
Столкнулся с проблемой, самостоятельно решить не удалось, прошу помощи.
Макрос считывает имена файлов в указанной папке.
На ПК, на котором макрос писался - всё ок, на другом во время обработки файлов, в именах которых присутствует буква "й" (к примеру "бейсболки.xlsx") появляется ошибка: "Run-time error '1004': не удалось найти файл ...\беи?сболки..xlsx".
Пробовал хардово заменять в имени файла "и~?" на "й" , не помогло
Как я понимаю, проблема в кодировке, в интернете нашёл только примеры исправления кодировки содержимого и в основном текстовых файлов.
Столкнулся с проблемой, самостоятельно решить не удалось, прошу помощи.
Макрос считывает имена файлов в указанной папке.
На ПК, на котором макрос писался - всё ок, на другом во время обработки файлов, в именах которых присутствует буква "й" (к примеру "бейсболки.xlsx") появляется ошибка: "Run-time error '1004': не удалось найти файл ...\беи?сболки..xlsx".
Код |
---|
Sub Open_all_files_in_dir() Dim xStrPath$, xFile$, xFileDialog As FileDialog Set wb_main = ActiveWorkbook Set sh_base = wb_main.ActiveSheet Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker) With xFileDialog .AllowMultiSelect = False .Title = "Select a folder with files" If .Show = -1 Then xStrPath = .SelectedItems(1) End with If xStrPath = "" Then Exit Sub xFile = Dir(xStrPath & Application.PathSeparator & "*.xl*") Do While xFile <> "" Workbooks.Open xFile ' "Run-time error '1004': не удалось найти файл xFile" Set act_wb = ActiveWorkbook '... act_wb.close xFile = Dir Loop wb_main.Save End Sub |
Пробовал хардово заменять в имени файла "и~?" на "й" , не помогло
Код |
---|
Do While xFile <> "" xFile = Replace(xFile, "и?", "й") '... xFile = Dir Loop |
Как я понимаю, проблема в кодировке, в интернете нашёл только примеры исправления кодировки содержимого и в основном текстовых файлов.