Файли в каталозі в Excel VBA - Прості макроси Excel

Зміст

Нижче ми розглянемо програму в Excel VBA що прокручує всі закриті робочі книги та аркуші в каталогута відображає всі імена.

Завантажте Book1.xlsx, Book2.xlsx, Book3.xlsx, Book4.xlsx та Book5.xlsx та додайте їх до "C: \ test \"

Ситуація:

Додайте до командної кнопки такі рядки коду:

1. По -перше, ми оголошуємо дві змінні типу String, об’єкт аркуша та дві змінні типу Integer.

Затемнити каталог як рядок, ім'я файлу як рядок, аркуш як робочий аркуш, i як ціле число, j як ціле число

2. Щоб уникнути мерехтіння екрана, вимкніть оновлення екрана.

Application.ScreenUpdating = Неправда

3. Ініціалізуйте каталог змінних. Ми використовуємо функцію Dir, щоб знайти перший *.xl ?? файл, що зберігається в цьому каталозі.

каталог = "c: \ test \"
fileName = Dir (каталог & "*.xl ??")

Примітка: функція Dir підтримує використання багатознакових (*) та односимвольних (?) Символів підстановки для пошуку всіх різних типів файлів Excel.

4. Змінна fileName тепер містить ім’я першого файлу Excel, знайденого в каталозі. Додайте цикл Do While.

Do While fileName ""
Петля

Додайте наступні рядки коду (на 5, 6, 7, 8 і 9) до циклу.

5. Ініціалізуйте змінні типу Ціле число та додайте ім’я файлу Excel до першого стовпця рядка i.

 i = i + 1
j = 2
Клітинки (i, 1) = ім'я файлу

6. Не існує простого способу вилучення даних (або назв аркушів) із закритих файлів Excel. Тому ми відкриваємо файл Excel.

Workbooks.Open (каталог та ім’я файлу)

7. Додайте всі назви аркушів файлу Excel до інших стовпців рядка i.

Для кожного аркуша у робочих книгах (ім’я файлу). Робочі аркуші
Робочі книги ("файли в каталозі.xlsm"). Робочі аркуші (1). Клітинки (i, j). Значення = арк. Ім'я
j = j + 1
Наступний аркуш

8. Закрийте файл Excel.

Робочі зошити (fileName) .Закрити

9. Функція Dir - це особлива функція. Щоб отримати інші файли Excel, можна знову використовувати функцію Dir без аргументів.

fileName = Dir ()

Примітка: коли більше не збігаються імена файлів, функція Dir повертає рядок нульової довжини (""). Як наслідок, Excel VBA вийде з циклу Do While.

10. Увімкніть оновлення екрана знову (поза циклом).

Application.ScreenUpdating = Правда

11. Перевірте програму.

Результат:

Ви допоможете розвитку сайту, поділившись сторінкою з друзями

wave wave wave wave wave