Перейти к содержимому

VBA Excel. Открыть книгу, создать новую

Открытие существующей книги Excel из кода VBA. Создание новой книги, присвоение ей имени. Обращение к открытым книгам из кода VBA Excel.

  1. Открытие существующей книги
  2. Создание новой книги
  3. Обращение к открытым книгам

Открытие существующей книги

Существующая книга открывается из кода VBA Excel с помощью следующего выражения:

Workbooks.Open Filename:="D:\test1.xls"

В кавычках указывается полный путь к открываемому файлу Excel. Если такой файл не существует, произойдет ошибка.
Проверить существование файла можно с помощью функции Dir:

If Dir("D:\test1.xls") = "" Then
    MsgBox "Файл не существует"
Else
    MsgBox "Файл существует"
End If

Или, если файл существует, сразу его открыть:

If Dir("D:\test1.xls") = "" Then
    MsgBox "Файл не существует"
Else
    Workbooks.Open Filename:="D:\test1.xls"
End If

Создание новой книги

Новая книга в VBA Excel создается с помощью выражения:

Workbooks.Add

Созданную книгу, если она не будет использоваться как временная, лучше сразу сохранить:

Workbooks.Add
ActiveWorkbook.SaveAs Filename:="D:\test2.xls"

В кавычках указывается полный путь сохраняемого файла Excel, включая присваиваемое имя, в примере - это «test2.xls».

Обращение к открытым книгам

Обращение к активной книге:

ActiveWorkbook

Обращение к книге с выполняемым кодом:

ThisWorkbook

Обращение к книге по имени:

Workbooks("test1.xls")
Workbooks("test2.xls")

Обратиться по имени можно только к уже открытой книге, а чтобы из кода VBA Excel книгу открыть, необходимо указать полный путь к файлу.