Что такое и зачем нужны макросы?
В википедии макрос — это макрокоманда в программном коде, последовательность нескольких команд или процедур, объединённых для выполнения определённой задачи. Макросы служат для ускорения выполнения сложных действий, повторяющихся много раз. Благодаря макросам не требуется каждый раз вводить одну и ту же последовательность команд, а достаточно просто вызвать нужный макрос.
Простыми словами, это как инкапсуляция нескольких задач и при вызове одной - вызвутся все. Это как делегат, только касается команд, а не методов в программировании. Вы можете "подписать" н-ное количество команд, например, на нажатие одной кнопки, и при нажатии её будет выполняться сразу несколько команд, а точнее - те, которые вы подписали.
Помните все эти геймерские мышки с кучей кнопок? Где при нажатии одной кнопки срабатывает макрос (!!!) который означает нажатие сразу нескольких кнопок? Такое ещё в шутерах очень полезно. Так вот это и есть макрос.