Страницы: 1
RSS
Пересохранение файлов без формул и связей
 
Задача, можно ли пересохранить большое количество файлов без формул, сохраняя конечные данные.
Не открывая каждую по отдельности.
В примере представлен один и тоже скопированный файл, уклон идет на количество.  
 
Цитата
Dana.Q написал:
Не открывая каждую по отдельности
нельзя. Открывать все равно придется. Но это можно сделать макросом, который откроет каждую и сделает всю грязную работу.
Цитата
Dana.Q написал:
В примере представлен
пример не представлен...
По сути код не сильно сложный(если правильно понял):
Код
Sub Get_All_File_from_Folder()
    Dim sFolder As String, sFiles As String
    Dim wb As Workbook, ws As Worksheet
    With Application.FileDialog(msoFileDialogFolderPicker)
        If .Show = False Then Exit Sub
        sFolder = .SelectedItems(1)
    End With
    sFolder = sFolder & IIf(Right(sFolder, 1) = Application.PathSeparator, "", Application.PathSeparator)
    Application.ScreenUpdating = False
    sFiles = Dir(sFolder & "*.xls*")
    Do While sFiles <> ""
        'открываем книгу
        Set wb = Application.Workbooks.Open(sFolder & sFiles, False, False)
        For Each ws In wb.Worksheets
            'пропуск ошибок на случай какой-нибудь сводной на листе
            On Error Resume Next
                'заменяем все данные на листе на значения
                ws.UsedRange.Value = ws.UsedRange.Value
            On Error GoTo 0
        Next
        'Закрываем книгу с сохранением изменений
        wb.Close True
        sFiles = Dir
    Loop
    Application.ScreenUpdating = True
End Sub
Изменено: Дмитрий(The_Prist) Щербаков - 20.11.2020 10:38:14
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дима,
как-то я с сохранением файлов и Dir нарывался на вечный двигатель
когда  очередной Dir сохраненный в предыдущей итерации файл воспринимал как новый файл в папке открывал его повторно и эта карусель крутилась бесконечно....
Изменено: Ігор Гончаренко - 20.11.2020 10:51:22
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
Ігор Гончаренко написал:
вечный двигатель
ни разу не было такого. Сохранял под тем же именем файл или другим?
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
под тем же. открыл, исправил, сохранил
Dir добросовестно пробегал до конца списка и потом с той же добросовестностью начинал перебирать эти же файлы снова и в том же порядке
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
Дмитрий(The_Prist) Щербаков написал:
Открывать все равно придется
Есть ли ограничения по количеству файлов, или же это параметры пк. Имеет ли значения количество листов в самом файле, хотя метод проб поможет в этом деле. Спасибо за макрос.  
Страницы: 1
Наверх