Makra, nazywane też makropoleceniami są małymi programami zapisanymi w plikach Excela. Najprościej można powiedzieć, iż służą automatyzacji często powtarzanych czynności w programie Excel. Ich niewątpliwą zaletą jest fakt, iż nawet użytkownik, który nie zna języka programowania VBA (Visual Basic for Applications) jest w stanie stworzyć mini-program, który może potem wykorzystywać w codziennej pracy, dzięki wykorzystaniu rejestratora makr wbudowanego w niektóre programy pakietu MS Office.
Przykładem może być np. polecenie, które ma za zadanie wkleić formaty i wartości - można stworzyć makro, które zrealizuje te dwie czynności od razu po sobie, zamiast używać dwukrotnie poleceń z grupy "Wklej specjalnie".
W sytuacji, kiedy poznamy choćby elementy wspomnianego języka i podstawy programowania, możliwości jakie uzyskamy stają się nieporównywalnie większe i wówczas można by mówić o nadużyciu w kontekście tylko "automatyzacji". Wykorzystując środowisko programistyczne VBA, jesteśmy w stanie tworzyć nawet bardzo rozbudowane aplikacje, które nie korzystają jedynie z programów pakietu MS Office.
Od wersji Office 2007, w przypadku konieczności użycia nowego formatu pliku, są one rozróżniane: *.xlsm - służy przechowywaniu pliku w nowym formacie przy zachowaniu ogromnej liczby wierszy i kolumn wraz z obsługą makr, *.xlsx - - nie umożliwia zachowania makr w pliku. W naszych przykładach będziemy pracować we wspomnianym w kursie podstawowym "Trybie zgodności", zapisując pliki w poprzednim formacie *.xls, który obsługuje makra.