Lexikon: Makro

Ein Makro ist eine Folge von Programmbefehlen, die gespeichert und immer wieder abgerufen werden kann. Die Befehle werden dann immer gleich abgespult und durchgeführt.

Das Word Makro kommt vom griechischen “makros – groß”. In der Wikipedia steht, das “macro” die Abkürzung für “macroinstruction – Großbefehl” ist. Der Brockhaus für Computer und Informationstechnologie schreibt: Makros sind “ein »Überprogramm« (oder »Großprogramm«, daher der Name)”.

Eine klare Abgrenzung zwischen “Makro” und “Programmierung” ist nicht einfach. Programmierungen werden in Programmiersprachen erfasst, die nicht nur für ein einziges Anwendungsprogramm gelten – solche Programmiersprachen sind zum Beispiel Pascal, BASIC oder .NET (sprich: dot-net). Makros dagegen werden in einer Anwendung erfasst und gelten dann für diese Anwendung.

In Microsoft Office werden Makros in der Sprache VBA (Visual Basic for Applications) erfasst. Ein Makro kann vom Anwender tatsächlich geschrieben werden; meistens wird es aber mit dem Makro-Recorder aufgezeichnet. Sie haben in Word und Excel einen Makro-Recorder, in PowerPoint fehlt er ab der Version 2007.

Den Makrorekorder erreichen Sie in Excel und Word so:

  • Aktivieren Sie über “Datei | Optionen | Menüband anpassen” die “Entwicklertools”.
  • Klicken Sie im Register “Entwicklertools” auf “Makro aufzchn.”
  • Vergeben Sie einen Namen und bestätigen Sie mit OK.
    Achtung! Der Name darf keine Leerschritte beinhalten und muss mit einem Buchstaben beginnen.
  • Führen Sie alle Aktionen durch.
  • Beenden Sie das Makro mit “Entwicklertools | Aufzeichnung beenden”.

Den Makocode anschauen können Sie über “Entwicklertools | Makros”. Markieren Sie den Namen und klicken Sie auf “Bearbeiten”. Alternativ können Sie auch auf “Entwicklertools | Visual Basic” klicken oder ALT+F11 drücken, um alle Makros direkt zu sehen.

Aufgezeichnete Makros bergen Gefahren: das Makro wiederholt stur immer genau die aufgezeichneten Befehle, vollzieht die gleichen Sprünge. Ändert sich die Grundstruktur der Datei, erzielen Sie ganz falsche Ergebnisse.

Unten sehen Sie ein Makro, das ich in Word aufgezeichnet habe. Ich bin einen Absatz nach unten gesprungen (STRG+Pfeiltaste nach unten), habe den dort erreichten Absatz markiert (STRG+SHIFT+Pfeiltaste nach unten) und dann Fett und Kursiv eingeschaltet.

Herausgekommen ist dieses Makro:
Sub Absatz_formatieren()
‘ Absatz_formatieren Makro

    Selection.MoveDown Unit:=wdParagraph, Count:=1
    Selection.MoveDown Unit:=wdParagraph, Count:=1, Extend:=wdExtend
    Selection.Font.Bold = wdToggle
    Selection.Font.Italic = wdToggle
End Sub

Es gibt zwei konkrete Probleme bei diesem Verfahren:

  1. Ich markiere nicht einen bestimmten Absatz, sondern von der aktuellen Cursorposition aus gesehen einen Absatz nach unten. Beim nächsten Aufruf muss ich also darauf achten, dass ich an der richtigen Position stehe!
  2. Ich schalte nicht Fett und Kursiv “ein”, sondern “um”! Der Befehl “wdToggle” bedeutet, dass ich in den jeweils anderen Modus umschalte: ein normaler Text wird fett und kursiv; ein Text, der bereits fett und kursiv ist, wird zum normalen Text. Ich schalte “ein”, wenn aktuell “aus” gilt und ich schalte “aus”, wenn aktuell “ein” gilt …

Sie müssen Makros in der Regel nachbearbeiten – und dazu brauchen Sie VBA-Kenntnisse. Statt dem “wdToggle” wäre es sinnvoller, die Werte für Bold (Fett) und Italic (Kursiv) auf “True” zu setzen.

Sub Absatz_formatieren()
‘ Absatz_formatieren Makro

    Selection.MoveDown Unit:=wdParagraph, Count:=1
    Selection.MoveDown Unit:=wdParagraph, Count:=1, Extend:=wdExtend
    With Selection.Font
        .Bold = True
        .Italic = True
    End With
End Sub

Hinterlasse jetzt einen Kommentar

Kommentar hinterlassen

E-Mail Adresse wird nicht veröffentlicht.


*