MyTetra Share
Делитесь знаниями!
Как открыть все рабочие книги в папке
12.10.2019
20:24
Раздел: !Закладки - VBA - Excel

Как открыть все рабочие книги в папке

Автор Дмитрий Якушев На чтение2 мин. Просмотров79

Что делает макрос: Представьте, вы написали классный макрос, который автоматизирует работу одного Excel- файла. Теперь проблема заключается в том, что вам нужно перейти в папку, открыть каждую
книгу, запустить макрос, сохранить изменения, закрыть книгу, а затем открыть следующую.
Открытие каждой рабочей книги в папке, как правило, ручной процесс, который отнимает много времени.
Этот макрос решает проблему, как открыть все рабочие книги папки.

Содержание

  1. Как макрос работает
  2. Код макроса
  3. Как работает этот код
  4. Как использовать

Как макрос работает

В этом макросе, мы используем функцию Dir. Функция Dir возвращает строку, которая представляет собой имя файла. С её помощью в указанной папке мы возьмём имя каждого файла (с расширением “.xlsx”), затем будем открывать каждый файл, запускать макрос и, наконец, закрывать файл после сохранения.

Код макроса


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Sub OtkritVseKnigi()

'Шаг 1:Объявляем переменные

Dim MyFiles As String

'Шаг 2: Укажите нужную папку

MyFiles = Dir("C:\Temp\*.xlsx")

Do While MyFiles <> “”

'Шаг 3: Открываем файлы один за другим

Workbooks.Open "C:\Temp\" &amp; MyFiles

'Код макроса с действиями

MsgBox ActiveWorkbook.Name

ActiveWorkbook.Close SaveChanges:=True

'Шаг 4: Следующий файл в папке

MyFiles = Dir

Loop

End Sub

Как работает этот код

  1. Объявляем переменную MyFiles (тип строчный), которая будет фиксировать имя каждого файла.
  2. В шаге 2, макрос использует функцию DIR, чтобы указать Тип файла и адрес папки. Обратите внимание, что код ищет файлы в формате xlsx. Это означает, что только .xlsx файлы будут передаваться. Если вы ищете .xls файлы, вам необходимо изменить расширение.
  3. Открываем файл, делаем некоторые действия (вы должны поместить в код макроса требуемые действия), а затем мы сохраняем и закрываем файл. В этом простом примере, мы вызываем окно с сообщением, чтобы показать имя каждого файла.
  4. Ищем снова по кругу, чтобы найти больше файлов. Если нет файлов, переменная MyFiles пустая.
    Если это так, то цикл и макрос завершается.


Так же в этом разделе:
 
MyTetra Share v.0.52
Яндекс индекс цитирования