@Anastasssiaa

Как применить макрос к нескольким файлам в один клик?

Есть какой-то макрос . Для примера пусть будет банальный helloworld.

Sub macros3()
    Range("B13").Select
    ActiveCell.FormulaR1C1 = "hello, world!"
    Range("B14").Select
End Sub


Что нужно в него дописать или что сделать, чтобы он применялся к нескольким книгам exel по одному клику (например, горячей клавише, которая была задана для этого макроса)?
  • Вопрос задан
  • 162 просмотра
Решения вопроса 1
ProgrammerForever
@ProgrammerForever Куратор тега Excel
Учитель, автоэлектрик, программист, музыкант
Что-то вроде:
Sub ProcessFilesInDirectory()
    Dim folderPath As String
    Dim fileName As String
    Dim wb As Workbook
    
    ' Путь к директории
    folderPath = "C:\temp\"
    
    ' Получаем первый файл с расширением .xlsx в директории
    fileName = Dir(folderPath & "*.xlsx")
    
    ' Перебираем все файлы в директории
    Do While fileName <> ""
        ' Открываем файл
        Set wb = Workbooks.Open(folderPath & fileName)
        
        ' Вызываем функцию macros3
        Call macros3()
        
        ' Сохраняем и закрываем файл
        wb.Close SaveChanges:=True
        
        ' Получаем следующий файл
        fileName = Dir
    Loop
End Sub
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы