Blattregisterkarten und Bildlaufleisten ausblenden

Ist Deine Tabellenblatt-Anzeige oder die Bildlaufleiste (Scroll Bar) verschwunden oder möchtest Du sie absichtlich ausblenden? Hier siehst Du, welche Einstellungen Du dazu vornehmen musst: Via "Datei" → "Optionen" → "Erweitert" kannst Du etwa in der Mitte dieses Fensters bei "Optionen für diese Arbeitsmappe anzeigen:" den Haken bei "Blattregisterkarten anzeigen" entfernen:

BlattregisterkartenAusblenden

Für die Bildlaufleisten gehst Du identisch vor: Du kannst unmittelbar oberhalb der Blattregisterkarten-Option zwischen "horizontaler" oder "vertikaler" Scroll Bar individuell wählen. Solche Einstellungen vorzunehmen eignet sich insbesondere bei Formularen oder Vorlagen, um insgesamt eine bessere Präsentation zu gewähren und auf das Wesentliche zu fokusieren. Einiges zum Thema "Formulare" habe ich übrigens in früheren Beiträgen wie "Formularfelder und Inhalte vordefinieren" und zu "Dropdown-Liste erstellen" erläutert.

Makro im Hintergrund abspielen (Application.ScreenUpdating)

Sobald ein Makro andere Tabellen öffnen und viele Befehle ausführen soll, eignet es sich, dieses im Hintergrund abzuspielen. Dadurch sieht der Benutzer nur das fertige Resultat, nicht jedoch die Einzelschritte im Schnelldurchlauf, was vorwiegend wie ein "Flackern" des Bildschirms aussieht. Um diese Hintergrundverarbeitung zu aktivieren, benötigt man lediglich zwei Codezeilen: Zu Beginn schaltet man die Sichtbarkeit aus [False], am Ende des Makros oder eines beliebigen Code-Abschnitts aktiviert man sie wieder [True]:

Sub MeinMakro()

Application.ScreenUpdating = False

...

...

Application.ScreenUpdating = True

End Sub

Dadurch, dass das Makro im Hintergrund verarbeitet wird und man die einzelnen Verarbeitungsschritte nicht sieht, ist das Programm grundsätzlich auch schneller fertig ausgeführt.

Verweis (SVERWEIS) mit mehreren Suchkriterien erstellen

Wir hatten schon einmal über den "SVERWEIS" nach links, respektive den "WVERWEIS" nach oben gesprochen. Den Beitrag dazu findest Du unter diesem Link. Mittels den dort verwendeten Formeln können wir auch einen Verweis mit mehreren Suchkriterien erstellen. Das eignet sich insbesondere bei dynamischen Berichten. Schauen wir uns ein Beispiel und die zu verwendende Tabelle an:

WechselkursTabelle1

Unser Verweis soll uns in der Zelle "E3" einen Kurswert ausgeben, der zwei Kriterien entspricht: Der Währung und dem Monat; Entsprechend dieser beiden Selektionen soll in der Matrix unterhalb der Wechselkurs ermittelt werden. Die beispielhaft verwendeten Kurse zum Schweizer Franken stammen aus einem originellen Tool von www.oanda.com.

Als Grundgerüst verwenden wir die eingangs verlinkte Formel "=VERWEIS" und "=VERGLEICH" in Kombination. Die komplette Formel, um unseren oben definierten Wechselkurs ausgeben zu können, lautet:

=INDEX(C6:G8;VERGLEICH(C3;B6:B8;0);VERGLEICH(D3;C5:G5;0))

... und nun zur Formel selbst und deren Bestandteile: Die erste Angabe (C6:G8) ist unserer Bereich mit den Wechselkursen - dieser beinhaltet alle möglichen Resultate unserer Suche. Das heisst, ein Wert aus diesem Bereich wird schlussendlich von unserer Formel in "E3" ausgegeben. Die Index-Formel verlangt daraufhin nach der "Zeile", also in welcher Zeile des Bereichs/Arrays sich der Wert befindet. Diese müssen wir allerdings erst noch ermitteln - es könnte ja einer von drei Währungen sein. Deshalb stellen wir einen "VERGLEICH" von "C3" gegenüber den Möglichkeiten innerhalb von "B6:B8" her. Ein zweiter Vergleich wird für die Monate durchgeführt, womit die korrekte Spalte ermittelt wird. Der Suchablauf verläuft wie folgt:

WechselkursTabelleVorgehen1

Strukturieren wir unsere Basis-Tabelle etwas um, kommen wir mit der obigen Formel leider nicht ganz ans Ziel. Dies ist die neue Ausgangslage:

WechselkursTabelle2

Unsere beiden Suchkriterien bleiben zwar dieselben, sie stehen nun aber nicht mehr in Spalte und Zeile, sondern nur noch in nebeneinanderliegenden Spalten. Unser Verweis muss deshalb so abgeändert werden, dass zuerst nach der korrekten Währung und dann zudem nach dem entsprechenden Monat gesucht wird. In der VERGLEICH-Formel werden dann die einzelnen Suchkriterien mittels Kaufmännischem-Und (&) aneinandergereiht ("C3&D3"). Dasselbe wird daraufhin für jeden entsprechenden Suchbereich gemacht ("B6:B20&C6:C20"). Die Reihenfolge der Suchkriterien spielt keine Rolle, sie muss nicht zwingend der Sequenz unserer obigen Definition entsprechen. Dies ist die komplette Formel in Zelle "E3":

{=INDEX(D6:D20;VERGLEICH(C3&D3;B6:B20&C6:C20;0))}

Fällt Dir etwas auf? Genau! Die geschweiften Klammern weisen auf eine sogenannte Matrixformel hin. Speziell daran ist, dass diese nicht selbst eingeben werden, sondern die Formel (ohne geschweifgten Klammern) wird mittels CTRL+Shift+Enter bestätigt! Der Suchvorgang in Matrixformel entspricht dem Iterationsverfahren - es wird zuerst das erste Kriterium (USD) überprüft, dann wird geschaut, ob auf der dazugehörigen Zeile auch der korrekte Monat steht. Falls nein, wird weiter in der ersten Suchspalte nach "USD" gesucht, usw. Das nachfolgende Bild veranschaulicht diesen Ablauf:

WechselkursTabelleVorgehen2

Je nach Datenstruktur kann also eine unterschiedliche Formel zum Zuge kommen - es lohnt sich auf jeden Fall, beide dieser Arten zu verstehen. (P.S.: Zum selben Ergebnis wie mit der vorgestellten Matrixformel würdest Du in diesem Fall auch mittels "=SUMMEWENNS" gelangen. Die komplette Formel lautet: "=SUMMEWENNS(D6:D20;B6:B20;C3;C6:C20;D3)")