Получение значение ячейки через макрос VBA

Сегодня я расскажу, как получить значение любой ячейки Excel.

  1. Закрой все окна Excel, если у тебя есть открытые
  2. Создай новый xlsx файл
  3. Введи в ячейку A1 любое значение
  4. Создай новый макрос
  5. Введи код
  6. Запусти макрос
  7. Должно появиться диалоговое окно, в котором будет содержание ячейки A1 на первом листе

Примерный код

 Sub GetValue() a = Workbooks(1).Worksheets(1).Range("A1").Value MsgBox (a) End Sub 

Теперь немного разберемся с тем, что такое Workbooks, Worksheets, Range и Value.

Workbooks — это все открытые на данный момент рабочие книги, можно сказать, что это "окна" Excel или открытые файлы Excel. Workbooks(1) — это первая открытая книга. Для того, чтобы открыть вторую, нужно ввести Workbooks(2). Если известно название файла, то можно получить доступ, не зная порядкового номера вот так: Workbooks("Лист Microsoft Excel.xlsx"), где Лист Microsoft Excel.xlsx — это название файла.

Worksheets — это все листы рабочей книги (включая скрытые). Аналогично с книгами нужно ввести Worksheets(1), чтобы получить доступ к первому листу выбранной рабочей книги.

Range задаёт диапазон ячеек.

Value — это значение выбранного объекта.

Как изменить значение ячейки MS Excel через макрос