Infosite von Joe Brandes
Eine Website von Trainer Joe Brandes. Infos zu IT-Seminaren von A bis Z.
Das klassische PCS Zertifikat
Von der Hardware und Netzwerktechnik bis zu den den Betriebssystemen Windows, Windows Server und Linux
Ich biete diese Module an!
Zertifikat CMSOD
Module Basiszertifikat
Module Specialist
Ready for Tech Deep Dives...
Bitte gerne ihre gewünschten Seminarinhalte anfragen!
In einem Bildungsurlaub vom 04. bis 08. September 2023 findet an der KVHS Wolfenbüttel (BIZ WF) ein Bildungsurlaub (Ganztagsveranstaltung) zum Thema "Tabellenkalkulation mit Excel" statt.
Sie lernen in diesem praxisorientierten Intensivkurs die Handhabung und den Umgang mit dem Programm Excel aus dem Hause Microsoft. Durch das saubere und effiziente Nutzen von Grundtechniken optimiert man die tägliche Arbeit mit Excel und ist für die Vertiefung mit weiterführenden Techniken sehr gut vorbereitet.
Microsofts Tabellenkalkulation Excel ist Standard bei der Aufbereitung und Analyse von Zahlen und Texten. In diesem Lehrgang werden wichtige Kenntnisse und weitergehende Fertigkeiten zu folgenden Schwerpunkten vermittelt:
Alle Inhalte werden in praxisnahen Übungen durch die Teilnehmenden erarbeitet.
Hier die Rahmendaten unseres Seminars:
Ort: VHS Wolfenbüttel, Raum MacOS (A 1.2) Zeiten: Mo., 04.09.23 bis Fr., 08.09.23; jeweils 08.30 - 15.30 Uhr (ggf. nach Absprache im Seminar)
Alle Inhalte werden in praxisnahen Übungen durch die Teilnehmer erarbeitet und an dieser Stelle - wie gewohnt - mit einem Beitrag begleitet.Ihr Trainer Joe Brandes
Intro:
...für die weiteren Arbeiten in Excel-Seminaren bitte beachten:
Falls wir in den Schulungen vorbereitete Trainingsunterlagen benötigen sollten, so werde ich diese über verschiedene Dateiablagen bereitstellen.
Kurzanleitung: Bitte einfach Dokumente sauber markieren und auf eigenen Rechner downloaden!Falls Ihr Browser keine Rückfrage zum Speicherort stellt, dann sollten sich die heruntergeladenen Dateien in Ihrem Benutzer-Ordner Downloads finden lassen. Die Dateien müssen beim Öffnen in Anwendungsprogrammen oft noch "aktiviert" werden, da sie aus Sicht Ihrer Anwendungen aus einer "unvertrauten Netzwerkquelle" stammen.
Screenshots mit Windows Boardmitteln ( Win + Druck )Anm.: die Screenshots der Seminartage finden Sie nach dem Seminar (gezippt) in der Dateiablage zum Seminar.
Bildschirmlupe mit Windows Boardmitteln ( Win + + ;weglegen der Lupe mit Win + ESC ) Anm.: Bildschirmlupen bzw. Vergrößerungen lassen sich in Online-Seminaren oft nicht optimal einsetzen!
(hier eine erste Kurzauflistung)
Meine Ausarbeitungen im Rahmen meiner Excel-Seminare und Interessen finden Sie als RestructuredText Dokumente unter excel.joe-brandes.de.
Mal sehen wo die Reise mit dieser Unterlage hingeht...
Diesen Begriff hört man in meinen Seminaren häufiger ;-). Gemeint ist hier: Das grundsätzliche Verständnis der fraglichen IT-Techniken. Am Besten gleich so, dass man auch nach einer Zeit ohne Beschäftigung mit diesen Techniken sehr schnell wieder in Fahrt kommt.
Unter einem roten Faden versteht man ein Grundmotiv, einen leitenden Gedanken, einen Weg oder auch eine Richtlinie. „Etwas zieht sich wie ein roter Faden durch etwas“ bedeutet beispielsweise, dass man darin eine durchgehende Struktur oder ein Ziel erkennen kann. Quelle: Wikipedia - Roter Faden
Unter einem roten Faden versteht man ein Grundmotiv, einen leitenden Gedanken, einen Weg oder auch eine Richtlinie. „Etwas zieht sich wie ein roter Faden durch etwas“ bedeutet beispielsweise, dass man darin eine durchgehende Struktur oder ein Ziel erkennen kann.
Quelle: Wikipedia - Roter Faden
Eine sehr grundsätzliche Erfahrung in der IT ist, dass sich natürlich die IT modernisiert. ABER: keine Entwicklergemeinschaft setzt sich dauernd hin und erfindet das Rad neu. Wir werden uns also erarbeiten, wie eine Technik tickt und dann profitieren wir einfach mal ein paar Jahrzehnte davon ;-).
...für die weiteren Arbeiten in und nach unseren Seminaren: Temporärer Download-Ordner für TN im Seminar
Diese Online-Portal - bzw. die entsprechenden Seminar-Ordner - stehen natürlich auch nach den Seminaren zur Verfügung. Oder aber man fragt die Unterlagen direkt bei mir nach.
Und los geht es ...
Zum Einstieg / Wiedereinstieg in die Excel-Praxis ein paar Erinnerungen...
Zellen können drei Inhalte aufnehmen:
Texte, Zahlen und Formeln; letztere beginnen immer mit einem "="
Zahlen werden immer sauber ohne Größenangaben und Währungen eingegeben - Eingaben sauber mit Return beenden
Spezial: Datum und Uhrzeit sind spezielle Zahlenformate (siehe unten)
Zellen in Spalten und Zeilen
Zellbezüge mit Buchstaben für Spalten und Zahlen für Zeilen; Bewegen mit Maus und Tastatur;
mit Strg und Cursortasten Cursortasten (Pfeiltasten) bewegen an "Tabellengrenzen"
mit Umschalten-Taste und Cursor wird markiert; Lässt sich kombinieren für effizientes Markieren großer Tabellenbereiche
in neuen Exceltabellen: 16.384 Spalten x 1.048.576 Zeilen (alt in xls: 256 x 65.536)
schnelles Positionieren mit Namensfeld (oben links) und Hinweis auf echte Inhalte der Zellen in BearbeitungsleisteSpaltenbreiten ändern, Spalten ein-/ausblenden
Relative Zellbezüge erlauben das Kopieren (Ziehen) der Formeln mit (daher der Name) relativen Anpassungen der Zellbezüge.
Absolute Zellbezüge erhält man durch das Hinzufügen von $ - Symbolen - so werden Zellbezüge beim Kopieren "fixiert".Tipp: mit Cursor an Zellbezug und Druck auf F4 erhält man automatisch alle relativ/absolut Kombinationen von Spalten und Zeilen.
Übung und Beispiel für gemischte relative/absolute Zellbezüge:"kleines 1-Mal-1" - Formel: =B$1 * $A2 zum Kopieren von Multiplikationen aus Spalten- (B$1) und Zeilen-Köpfen ($A2)
=B$1 * $A2
Zellen markieren
Markieren getrennter Zellbereiche mit gehaltener Strg -Taste nach der ersten Markierung für alle folgenden Zellbereiche
Automatisches Ausfüllen
... Ziehen mit kleinem Fadenkreuz an Zelle rechts unten (eigentlich ja "Kopieren")von Monaten, Wochentagen und Zahlenformaten, Ziehen mit der Maus
Excel 2007: Excel-Optionen - Kategorie Häufig verwendet - Benutzerdefinierte ListenExcel 2010 / 2013: Excel-Optionen - Kategorie Erweitert - nach unten scrollen - Benutzerdefinierte ListenTipp: bei Zahlen Startwert und Schrittweite dann 2 Zellen markieren und ziehen
Eingabetricks:
Zelleingaben mit ' beginnen - Zellen werden automatisch 1-zu-1 als Text übernommen (z.B. '007)so lassen sich auch "Formeln" in Zellen eintragen
manuelle Zeilenumbrüche in Zellen mit Alt + Return Return
neue Spalten/Zeilen mit Markieren der Gewünschten und dann mit Strg + + bzw. - einfügen/löschenAktuelles Datum mit Strg + . (Strg + Punkt)
Drag & Drop
Mausaktionen mittels "Ziehen und Fallenlassen"; Praxis mit Zellen, Zellbereichen und Tabellenblätternmittels Strg-Taste wird das Verschieben zum Kopieren
Mit zusätzlich gehaltener Umschalten-Taste kann man an der Zielstelle einfügen lassen.
Neue Spalten/Zeilen/Zellen
Markieren der Spalte(n)/Zeile(n) und dann mittels Strg + + einfügen bzw. Strg + - entfernenBei Bereichen erscheint ein zusätzliches Menü
Zellformate
Buchhaltung vs. Währung (Ausrichtung in Zelle beachten), Dezimalstellen, Datum & Uhrzeit
Datum / Uhrzeit
Problem: Datum-/Uhrzeitzellen sind speziell formatierte Zahlenzellen und bei Uhrzeiten kann es keine negativen Zahlenwerte als Uhrzeitformat geben!Zahleninhalte mit Bezug auf den 01.01.1900 bei Microsoft Systemen
Keine negativen Uhrzeitformate möglich (Hinweis auf ####### in Zellen)
Anm./Hilfe bei Apple/MacOS-Excel-Mappen: über Optionen - Erweitert - 1904 Datumswerte verwenden (Rubrik: Beim Berechnen dieser Arbeitsmappe)
Benutzerdefinierte Zahlenformate
am Beispiel mit Litern: 0,00 "Liter" formatiert Zahl 15 zu 15,00 Liter
0,00 "Liter"
alternativ dann einfach die Zeichenkette (engl. String - Text in Anführungszeichen) mit gewünschtem Text austauscheneinmal definierte benutzerdefinierte Zahlenformate merkt sich Excel in der Kategorie "Benutzerdefinert" bei den Zahlenformaten
Format übertragen
über Kontextmenü und/oder Symbol "Pinsel" die Formate aus Vorlage-Zelle auf andere Zellen übertragenTipp: mit Doppelklick behält man den Kopierpinsel bis man ESC drückt
Kommentare (bzw. Notizen bei neuem Excel)
Mittels Rechter Maus (Kontextmenü) Kommentar eingefügt und später auch bearbeiten bzw. löschen, ein-/ausblendenin Ribbons: Überprüfen - Gruppe Kommentare
in Druckoptionen lassen sich die Ausdrucksgestaltungen für die Kommentare (und Notizen) einstellen
DATEDIF()
(Beispiel für eine versteckte Funktionen in Excel)
Berechnung von Datumszelldifferenzen in Jahren (Schalter "y"), Monaten ("m") oder Kombinationen; Tipp: Suchmaschine nutzen mit Begriffen wie "Excel Jahre Differenz" (Beispiel-Ergebnis-Link)
So viel zu den Topics und Übungen zum Thema "Excel" mit Seminarschwerpunkt Grundlagen.
Die Nutzung von Tabellen bzw. "Großen Tabellen" sollte effizient erfolgen.
Wir pflegen in unseren Excel-Seminaren seit vielen Jahren das Thema "Große Tabellen". Allerdings könnte man das Thema auch beschreiben mit "Wie gehe ich effizient mit den Excel-Tabellen um und welche Helferlein stellt mir Excel beiseite?!"
Im Einzelnen handelt es sich um die folgenden Techniken, die wir jeweils mit Übungen begleiten und nachvollziehen werden:
In Tabellenblatt navigieren
Hier seien die Tastenkombinationen zum effizienten bewegen und markieren in Erinnerung gebracht:
In Arbeitsbereich zoomen
Über die Oberflächen-Zoom- und Ansichtstools den Ausschnitt für die Arbeit optimieren. Insbesondere:
Tabellenfenster teilen
Mittels Menüband Ansicht - Gruppe Fenster - Teilen lässt sich ein Arbeitsblatt mit geteilten Fensterbereichen nach eigenen Wünschen mit Inhalten darstellen.
Zeilen und/oder Spalten fixieren
Bei langen Tabellen kann man hier die gewünschten Kopfbereiche "festhalten / fixieren", damit man beim Scrollen immer die Tabellenkopfbeschriftungen erhält.
Einstellung mittels Menüband Ansicht - Gruppe Fenster - Fenster fixieren. Für die Standardwahl "Fenster fixieren" bitte vorher Zelle markieren an der links/oberhalb fixiert wird.
Menüband Ansicht - hier: Aufhebung einer Fixierung
Tipp: die "als Tabelle definierten" Bereiche zeigen dieses Verhalten automatisch und tragen ihre Spaltenköpfe in die Standardspalten des Tabellenblatts ein.
Ausdruck optimieren
Bei größeren Tabellenblättern sollte man sich die Ausdrucksgestaltung über die Druckoptionen von Excel genauer anschauen.
neue 2007/2010er Technologie - unterschätzt als einfache "Design-Technik" zum Einfärben von Tabellenbereichen; unter der Haube aber komplett neue intelligente "Datenbank"-Technik mit einfachen und sicheren Möglichkeiten zum Sortieren und Filtern von Informationenaußerdem lassen sich diese Tabellenbereiche sinnvoll benennen und damit "sprechende" Formeln erzeugen: =SUMME(KassenbuchSep[Eingang])
=SUMME(KassenbuchSep[Eingang])
Tipps:
Anm.: bei Filterung reagieren die Standardsummen nicht -> wir brauchen spezielle Summenfunktionen (s. DBSUMME)
Sortieren und Filternnutzen der neuen Tabellenformate und Ribbon Daten; Hinweis: nach Änderung mit Sortieren lassen sich "Datensätze" nicht einfach in Originalfolgen bringen, was Datenbanktechnik entspricht und OK ist; Hilfe: durch Tabellenblattkopien oder am Besten eine fortlaufende ID-Spalte
Wichtige Erkenntnis: beim Filtern von Daten werden zwar in Tabellen die nicht zutreffenden "Datensätze" ausgeblendet, aber eine Summe über eine Datenspalte berechnet weiterhin die Gesamtsumme (also ohne Filter!)
neue Regeln und Hervorhebungen mit Excel 2007/2010:
Alle Formate lassen sich kombinieren, Regeln löschen und verwalten mittels des Ribbon Start - Formatvorlagen - Bedingte Formate...
Hinweis: alle vordefinierten Regeln (z.B. "Top 10 Werte" oder "Obere 10%") lassen sich auf die eigenen Bedürfnisse anpassen. Auch die grafischen Formatierungen können auf die eigenen gewünschten Intervalle konfiguriert werden.
Datentypen: *.xltx bzw. *.xltm
Sammeln von Inhalten, Funktionen oder auch Makros in einer Mappe und bereitstellen als TemplateÜber neue Mappe - Meine Vorlagen lassen sich dann die Mappen inkl. der aktiven Elemente nutzen
Arbeitsmappenvorlagen mittels "Speichern unter..." und Dateityp Excel-Vorlage *.xltx in passenden Vorlagenordner des Office-Users speichern.Vorlagen für Mappen mit Makros natürlich mit *.xltm speichern!
*.xltx
*.xltm
Standardordner: C:\Users\benutzername\Documents\Benutzerdefinierte Office-Vorlagen Anm.: im Windows Explorer einfach deutschen Ordner "Dokumente" aufsuchen...
C:\Users\benutzername\Documents\Benutzerdefinierte Office-Vorlagen
Die Vorlagen über Menüband Datei - Neu - Rubrik: Persönlich aufrufen/nutzen.
Speicherort für Vorlagen in Vorgänger-Windows/Office:..\AppData\Roaming\Microsoft\Templates
..\AppData\Roaming\Microsoft\Templates
Tipp: Unterordner im Templates-Ordner des Office lassen Registerkarten für Meine Vorlagen entstehen!
Excel beinhaltet Hunderte von Funktionen gruppiert nach verschiedenen Kategorien.
Standardfunktionen(Eingabe mittels Maus und/oder Tastatur)
Hinweis auf Hilfe über Funktionsassistenten (fx-Symbol in Bearbeitungszeile) und Aufruf von integrierter oder Online-Hilfe
WENN()
Logische Funktion mit 3 Parametern: Prüfung/Bedingung; Dann-Wert; Sonst-WertSyntax beachten und Hilfestellung bei Eingabe
Anm.: Verschachtelung von zwei WENN-Funktionen für drei Verzweigungen und so weiter bis maximal 9 Verschachtelungen (→ 10 Zuweisungen)
Nutzung von Zellen für Vergleichswerte in Prüfungen und für Berechnungen in den Dann/Sonst-Zweigen verlangen wieder nach den absoluten Zellbezügen, damit sich die Funktionen auch sauber kopieren lassen (nach unten ziehen lassen).
SVERWEIS()
verschachtelte WENN-Funktionen können nur maximal 10 Werte verzweigen (9 mal WENN verschachteln) und das will ja auch kein Mensch machen ;-)mit SVERWEIS lassen sich aus Bereichen (Matrix) die entsprechenden Ergebniswerte aus den 2. / 3. ... Spalten auswerten:=SVERWEIS( B4; $A$2:$E$6 ; 2) =SVERWEIS( B4 ; Provisionstabellenblatt!$A$2:$E$6 ; 2 )
=SVERWEIS( B4; $A$2:$E$6 ; 2)
=SVERWEIS( B4 ; Provisionstabellenblatt!$A$2:$E$6 ; 2 )
oder mit Tabellen: (Technik: Als Tabelle formatieren...)=SVERWEIS( B4 ; Provisionstabelle[#Alle] ; 2 )
=SVERWEIS( B4 ; Provisionstabelle[#Alle] ; 2 )
Beachten: erste Spalte aufwärts alphanumerisch sortiert und Einstiegswert (kleinster möglicher Wert) sollte in der ersten Zeile berücksichtigt werdenVerwandte Funktion: WVERWEIS() - dort das Ganze dann in Zeilen, statt in Spalten bei SVERWEIS()
TEILERGEBNIS-Funktion
mit dieser besonderen "Funktionssammlung" lässt sich eine gefilterte Tabelle jetzt sofort auswerten:=TEILERGEBNIS( 9 ; BestellungenSep[Bestellungen] ) hier definiert die "9" die Funktionalität "Summe erstellen"
=TEILERGEBNIS( 9 ; BestellungenSep[Bestellungen] )
alternativ: 1 für Mittelwert, ... (siehe Hilfe zur Funktion TEILERGEBNIS)
DB-Funktionen
DBSUMME behandelt Tabellenbereiche wie Datenbanken und erlaubt quasi Abfragen mit Kriterien (Queries)Übungen zu einfachen ODER (Kriterien auf unterschiedlichen Zeilen) und zu UND (Kriterien befinden sich auf derselben Zeile) bei den Suchkriterienzellen;
Hinweis auf Excel-Hilfe Kategorie DB-Funktionen oder wieder einfach über Funktionsassistenten die Hilfe aufrufenDB-Funktionen: DBSUMME(), DBMAX(), DBMIN(), DBMITTELWERT(), ...
KGRÖSSTE (engl.: LARGE) und Funktionen Übersetzer
Weil diese Funktion gerade in einem anderen Seminar zum Einsatz kam, will ich sie hier kurz vorstellen. Außerdem wurde die Funktion auf der Infosite mit englischem Namen dargestellt, sodass es auch von Interesse ist, die Übersetzungen (ins Deutsche) parat zu haben.
Aufgabe: Ermittle immer die 3 größten Werte einer Spalte! (Hilfe/Support Seite MS zu KGRÖSSTE)
Für die "Übersetzung" des Originals =IF(B4>=LARGE($B$4:$B$10;3);B4;"") kann man neben einer allgemeinen Internetrecherche auch zum Excel-Translator greifen.
=IF(B4>=LARGE($B$4:$B$10;3);B4;"")
Und schon erhält man mit dem Übersetzer die "deutsche Formel": =WENN(B4>=KGRÖSSTE($B$4:$B$10;3);B4;"") !
=WENN(B4>=KGRÖSSTE($B$4:$B$10;3);B4;"")
Beim Nachschlagen der Support-Infos bei Microsoft zur Funktion KGRÖSSTE() wird die Verfügbarkeit seit Version 2007 dokumentiert. Leider sind nicht immer alle Funktionen, die man für Problemlösungen mit Excel recherchiert solche Klassiker. Insbesondere sehr attraktive Funktionen wie SORTIEREN() [engl. SORT()] oder EINDEUTIG() [engl.:UNIQUE()] findet man leider nur bei den aktuellen Excel 2021 und 365!
Für den Einstieg - und das Verständnis - zu Pivot-Techniken sollte man sich noch einmal die Datenbankfunktionen ansehen.
Mittels Menüband Einfügen
Aufbereitung und Analyse von Daten mit Hilfe der Assistent-unterstützten Pivot-TabellenEntwurf auf eigenem Tabellenblatt mit speziellen Menübändern für die Pivot-KonfigurationZusammenhang mit DB-Funktionen (DBSUMME, DBANZAHL); auch hier wieder Einsatz von "Als Tabelle formatieren..."
Eigenschaften von Feldern und Gesamt-PivotTable geändert (z.B. automatisches Anpassen Spaltenbreiten deaktiviert)Hinweis: beim Ändern der Datenbereiche für die PivotTable muss man diese manuell aktualisieren (Kontextmenü oder Schaltfläche Aktualisieren in Menüband Optionen der PivotTable-Tools)
mehrere Auswertungen (Summe, Anzahl) in Bereich "Werte" möglich
Es lassen sich Datenschnitt (oder auch Zeitachsen) einfügen (Menüband PivotTable-Tools - Optionen - Gruppe Sortieren und Filtern) - so lassen sich weitere attraktive Filterungen durchführen
Gruppierte Bereiche (in Zeilen und/oder Spalten) möglich:
Die berechneten Werte im Pivot-Bericht lassen sich einfach per Klick in Formeln übernehmen und werden clever als Pivot-Zuweisungen und nicht als relative (oder gar absolute) Zellbezüge (z.B. H19) übernommen. So passen die Zellen immer - egal wie sich der Bericht gerade mal nach Datenaktualisierungen verändert hat! Beispiel:=PIVOTDATENZUORDNEN("Gehalt";$A$3;"Abteilung";"IT")
=PIVOTDATENZUORDNEN("Gehalt";$A$3;"Abteilung";"IT")
Tipp: mit Doppelklick auf Zusammenfassungen in dem Pivot-Bericht erhält man automatisch eine neues Tabellenblatt mit den Detaillwerten der Pivot-Zusammenfassung!
PivotChart:
Beziehungen
Mit Pivot kann man auch Daten aus mehreren Tabellen zusammenfassen und auswerten (siehe Beziehungen)
Measures
Und es lassen sich auch berechnete Spalten erstellen (siehe Measure).
... eigener Dateityp: *.xlsm (bzw. *.xltm für Vorlagen)
Beim Öffnen muss außerdem noch die Sicherheitswarnung beachtet werden, die dann überhaupt erst die "Aktivierung" der aktiven Inhalte - sprich unsere Makros - ermöglicht. Ohne diese Aktivierung sind die Makros (aktive Inhalte) nicht nutzbar!
Arbeitsmappenvorlagen einfach mittels "Speichern unter..." und Dateityp *.xltx in passenden Vorlagenordner des Office-Users speichern.Vorlagen für Mappen mit Makros natürlich mit *.xltm speichern!
Aktueller Standardordner: C:\Users\benutzername\Documents\Benutzerdefinierte Office-Vorlagen Anm.: im Windows Explorer einfach deutschen Ordner "Dokumente" aufsuchen...Die Vorlagen über Menüband Datei - Neu - Rubrik: Persönlich aufrufen/nutzen.
PERSONAL.XLSB: Excel kennt auch "Persönliche Makro-Arbeitsmappen": ..\AppData\Roaming\Microsoft\Excel\XLSTART\PERSONAL.XLSB (siehe also Benutzerprofil)
..\AppData\Roaming\Microsoft\Excel\XLSTART\PERSONAL.XLSB
Einfache Erstellung der PERSONAL.XLSB: Makro erstellen mit "Makro speichern in: Persönliche Makroarbeitsmappe"
Danach lässt sich diese Technik über den VBA-Editor - Projektexplorer verwalten (Code hinzufügen/hinkopieren).
... Erste Gehversuche mit VBA-Techniken über Aufzeichnungen von Makros
An dieser Stelle sei auf die Seminare mit entsprechendem Schwerpunkt "Excel - Makros" verwiesen (also ohne weitere Vertiefungen in VBA).
Tastenkombinationen:
Erinnerung: Menüband Entwicklertools einblenden!
Konfiguration über Excel-Optionen - Vertrauensstellungscenter - Einstellungen für VertrauensstellungscenterHier: Einstellungen für Makros (möglichst unverändert lassen); Vertrauenswürdige Speicherortealternativ erreichbar über Schaltfläche "Makrosicherheit" im Menüband Entwicklertools
Bei Laufwerkspfaden im Netzwerk (UNC Pfade - Universal Naming Convention) muss extra ein Kontrollkästchen für diese Nutzung aktiviert werden
Tipp: bei den "Vertrauenswürdigen Speicherorten" finden Sie auch Ihre Verzeichnisse für Benutzer und Templates (siehe PERSONAL.xlsb in Ordner .\XLSTART ) ! Und wieder: Speicherorte auf Netzwerkressourcen müssen noch extra erlaubt werden.
.\XLSTART
... siehe Alt + F11
Manuelles Einfügen von Sub Routinen (Makros) oder Function (neue eigene Funktionen; Beispiel: NettoMwst)
Wichtig: falls noch keine Struktur "Module" im Projekt-Explorer vorhanden ist, dann bitte mittels Einfügen - Module diese notwendige Struktur erstellen
Mit individuellen Modulen lassen sich die VBA-Codes besser und effizienter organisieren!
Manuelles (zeilenweise) Abarbeiten mit Funktionstaste F8
Aufruf der Hilfen zu VBA Befehlen und Aufruf F1
Manuelles (zeilenweise) Abarbeiten mit Strg + Leertaste
Mehrzeiliger Code mit " _" als Zeilenumbruch:
Über mehrere Zeilen mit Leertaste _ (in MsgBox Konstante vbLf)
Sub MsgBoxMehrzeiligAnzeigen() MsgBox "Heute ist der " & Date & vbLf & _ "Es ist jetzt genau: " & Time & vbLf & _ "Sie sind der Anwender: " & Environ("username"), _ vbOKOnly, "Meldung"End Sub
Tipp: bei Code mit Vorgestellten Optionen bitte jeweils ein einzelnes Modul nutzen (siehe: Option Explicit )!
Option Explicit
Debugging: bei Fehlern lässt sich im Editor der fragliche Quellcode begutachten und korrigieren. Für eine weitere Excel/VBA-Nutzung muss man den Fehler beheben oder die Ausführung des Makros stoppen (Stopptaste im Editor).
Symbolleiste "Bearbeiten" einfügen lassen im VBA-Editor: Einzüge, Haltepunkte, Sub/Makro (F5), Kommentierungen
Einstellungen für Tab-Schrittweite (z.B. 2 statt 4 Leerzeichen), Schrift/Schriftgröße oder automatische "Option Explicit" für neue Module
Codeeingaben gerne in Small (kleinen Zeichen) und ohne Leerzeichen:
worksheets("Tabelle1").range("a1").value=100 ' wird zuWorksheets("Tabelle1").Range("a1").Value = 100
Aber: erstellten Code immer kontrollieren/checken!
Eigenschaften (F4)
Übung: Sichtbarkeiten von Tabellenblättern manipulieren
Siehe auch: ScrollArea
Eine Idee für unsere Einführung in die Automatisierungen mit Makros und VBA-Code ist die praktische Umsetzung "quasi fertiger" VBA-Lösungen aus diversen Quellen:
Hier mal ein Beispiel: Internet-Recherche mit "excel VBA tabellenblätter sortieren" ergibt aktuell mit Google gut 26.000 Suchergebnisse!
Darunter findet sich (z.B.) auch eines der erwähnten Portale rund um Excel: https://www.excel-inside.de/vba-loesungen/datei/951-tabellenbl%C3%A4tter-alphabetisch-sortieren
Und schon hat man ein "Copy & Paste" Beispiel für die Sortierung von Tabellenblättern
Sub Sheets_alphabetisch_sortieren()'** Dieses Makro sortiert die Blätter in alphabetischer Reihenfolge'** Reihenfolge: Sonderzeichen, Ziffern, Buchstaben'** Dimensionierung der VariablenDim intAnz As IntegerDim a, b As IntegerDim strSortKrit As String'** Sortierreihenfolge festlegen'** "<" = Aufsteigend von 0-9 und A-Z'** ">" = Absteigend von Z-A und 9-0strSortKrit = ">" 'Nach Bedarf anpassen!'** Ermittlung Anzahl TabellenblätterintAnz = ActiveWorkbook.Worksheets.Count'** Blätter nacheinander durchlaufen und sortierenFor a = 1 To intAnz For b = a To intAnz If strSortKrit = "<" Then If Worksheets(b).Name < Worksheets(a).Name Then Worksheets(b).Move Before:=Worksheets(a) End If ElseIf strSortKrit = ">" Then If Worksheets(b).Name > Worksheets(a).Name Then Worksheets(b).Move Before:=Worksheets(a) End If End If Next bNext aEnd Sub
Den Code einfach in ein Modul Ihrer Wahl kopieren und austesten!
Und diese beispielhafte Suche kratzt nur an der Oberfläche der möglichen Umsetzungen - wie ich immer sage: "Das Rad wurde schon erfunden". Was in diesem Zusammenhang heißen soll, dass es bereits Lösungen für Ihre Probleme gibt. Es liegt an uns diese sauber mit Excel-Technik umsetzen zu können.
Mit ein wenig function VBA-Code lassen sich eigene Funktionen deklarieren, die man dann in Excel wie die eingebauten Funktionen nutzen kann.
Public Function NettoMwst(Betrag, Optional SteuerSatz As Single = 0.19)'Quelle: Helmut Pirklbauer Dim Netto As Double Netto = Betrag / (1 + SteuerSatz) NettoMwst = Excel.Application.Round(Netto, 4)End Function
Hinweis: diese functions müssen sich bis auf Weiteres in den Modulen von Arbeitsmappen befinden (Anm.: also nicht in der personal.xlsb - der persönlichen Arbeitsmappe).
TN-Bescheinigungen, Feedback-Bögen, Letzte Fragen
Vertiefungen zum Thema VBA Programmierung - eigentlich als eigenständiges Seminar!
Routinen direkt beim Laden einer Arbeitsmappe automatisch ausführen lassen:
Private Sub Workbook_Open() 'Dieses Ereignis wird beim Öffnen der Mappe ausgeführtTabelle1.Range("A1").Value = 100 'Die ScrollArea für Tabelle1 setzenTabelle1.ScrollArea = "A1:D10"End Sub
Wichtig: dieser Code gehört jetzt mal nicht in die Module, sondern sozusagen wortwörtlich zu "Diese Arbeitsmappe".
... die Tabellennamen mit unterschiedlicher Ansprache ...
Die Tabellenblattnamen lassen sich ändern in der Blattansicht und über das Eigenschaftenfenster; z.B.:
Empfehlung (bzw. häufig Best Practise): Codename ; wegen besserer Code/Syntaxcompletion, sicherer, weniger Pflegeaufwand!
Varianten zum Ansprechen eines Tabellenblatts:
' Codename:Tabelle3.Range("A1").Value = 100' Vollqualifiziert mit WorksheetsWorksheets("tbl_Daten").Range("A4").Value = 10' Vollqualifiziert mit Worksheets und IndexWorksheets(3).Range("A2").Value = 10' teilweise qualifiziert - Sheets arbeitet auch mit DiagrammblätternSheets("tbl_Daten").Range("A5").Value = 10' völlig ungenau/gefährlichRange("A6").Value = 10
Conclusio/Empfehlung: Tabellenblätter genau planen und strukturieren!
beispielhafte Direktaufrufe:?Environ("username") ?Environ("computername")
?Environ("username")
?Environ("computername")
Übung - Funktionsnamen im Englischen Original ermitteln:Wie heißt die Funktion MITTELWERT() in Zelle A1??range("A1").Formula=AVERAGE(D1:D8)
?range("A1").Formula
Tipp: Formel in Zelle eintragen: Tabelle3.Range("A1").Formula = "=AVERAGE(D1:D8)" Hinweis: FormulaLocal hat dann die länderspezifische Benennung!
Berechnungen (automatisch / manuell)
Anm.: SAP-Excel-Exports sind oft manuell eingestellt, sodass Excel diese Blätter nicht automatisch aktualisiert!
Aufrufe auch gerne auch im Direktfenster:Application.Calculation=xlCalculationManual oder dann wieder:Application.Calculation=xlCalculationAutomatic
Application.Calculation=xlCalculationManual
Application.Calculation=xlCalculationAutomatic
Debug Ausgaben
z.B. zur Laufzeitmessung:Debug.Print "Start: " & Now ....Debug.Print "Ende: " & Now oder einfach manuell einen Wert / Variable ausgeben!
Debug.Print "Start: " & Now
Debug.Print "Ende: " & Now
Excel-VBA-Objekte haben
Übung/Test mit Objekt "Application"
Sub UnterschiedMethodeUndEigenschaft() With tbl_Matrix.Range("A1:D10") ' Eigenschaft .Borders(xlInsideHorizontal).ColorIndex = 4 ' Methode .BorderAround Weight:=xlThick, ColorIndex:=3 End WithEnd Sub
Beachte: Zuweisungen mit = und := Bitte auch an Code-Completion mit Strg + Leertaste denken und die automatischen Auswahllistenfelder nutzen.
=
:=
Deklarieren mit Dim ; Tipp: Sonderzeichen vermeiden
Dim
lowerCamelCase empfohlen: intBeispielVar (Prefix empfohlen; hier: int für Integer-Variable)Am Anfang der Sub-Routinen die Variablen deklarieren (lokale Variablen).
Beispielhafte Prefixes für die Datentypen:bool Boolean , byte Byte , cur Currency , dtm Date , dec Decimal , dbl Double , int Integer , lng Long , obj Object , sng Single , str String , var Variant , rng Range , wkb Workbook
Speziell: Typ Enum
Übersicht zu Variablentypen: (Beachten: VB weicht teils von VBA ab; z.B. decimal not supported, ...)
Beispielhafte Links:
Anm.: nur eine kleine Linkauswahl ohne Anspruch auf Vollständigkeit ;-)
Statische/Static Variablen bleiben nach Laufzeitende erhalten!
Sub VariablenInhaltBleibtBestehen()Static lngAufrufe As Long lngAufrufe = lngAufrufe + 1 MsgBox "Makro wurde " & lngAufrufe & " Mal ausgeführt!"End Sub
Öffentliche/Public Variablen Public dtmStartzeit As Date sind auch über Modulgrenzen hinweg nutzbar!
Public dtmStartzeit As Date
Private/Private Variablen Private strPasswort As String sind nur in ihrem Modul verfügbar!
Private strPasswort As String
... sind schneller als Variablen!
Const strArbeitsmappe as String = "Mappe1.xls"Const dteStartDatum As Date = #1/1/2015#Const strFehlermeldung as String = "Fehler beim Druck!"Const sngMWST as Single = 1.19
Auch hier: möglichst Typ definieren.
Übungen zu unterschiedlichen Varianten
.... Open ConstTxtDatei For Input As #1Do Until EOF(1)Line Input #1, strTextDebug.Print strTextLoopClose #1.... Open ConstTxtDatei For Input As #1VarDat = Input$(LOF(1), 1)Debug.Print VarDatClose #1
Zweite Variante ist schneller, da man keine VBA-Schleife (Loop) nutzt.
Verwzeigungen
Inklusive Übungen und Beispielen
Übungen / Beispiel-Codes für TN
Schleifen
Hier mal zwei Beispiele für UserForms
Herdt-Taschenrechner
Einbau einer neuen Schaltfläche (CommandButton cmdMultiplikation) und Code für eine Multiplikationsfunktion des Taschenrechners
Für weitere vertiefende Beschäftigungen mit dem Thema "UserForms" hier eine beispielhafte Anleitung im Internet:
VBA Tutorials - Eingabemasken mit Excel (Link Übung Eingabemasken mit Excel)
Nutzung von UserForms: hier wichtig, dass die aktiven Elemente / VBA-Codes den Elementen des Formulars zugeordnet werden.
Das eigentliche Formular wird durch eine einfache Schaltfläche im Arbeitsblatt per Klick aufgerufen!Beispiele für Sub / Prozeduren: cmdMulti_Click() oder txtZahl1_Exit() also immer der Name eines Form-Steuerelements und ein angehängtes Ereignis!
cmdMulti_Click()
txtZahl1_Exit()
"VBA mit Excel", Bernd Held, (aktueller Link zur 4. Auflage)
Rheinwerk Verlag, 1016 Seiten, 4., aktualisierte und erweiterte Auflage 2019, gebundenRheinwerk Computing, ISBN 978-3-8362-7398-5 Anm.: Beispiele lassen sich downloaden, im Bundle erhältlich: +5,- € Aufschlag für DRM-freie PDF/EPUB/MOBI!
Zum Thema Excel (Allgemein) und Automatisierung mit Makros und VBA gibt es diverse Literatur.
In der folgenden Gallery - in lockerer Schüttung - mal ein Auszug aus meiner Excel Makros / VBA Bibliothek:
Und mit genügend VBA-Know-How lassen sich nahezu endlos Beispiele für den Einsatz von Makros und VBA im Netz finden.
TOC:
Hier die Inhalte zu den Techniken...
Link Übersicht zu Analysen: Support Microsoft Was-wäre-wenn-Analysen
Excel selbst verfügt über drei unterschiedliche Ansätze für diese Analysen:
Szenarien
Mit Hilfe des Szenario-Manager-Assistenten (siehe Menüband Daten) lassen sich verschieden Werte für Zellen festlegen, mit denen dann die Ergebnisse berechnet werden.
Bild: Szenariobericht aus Übungen - Link zu Anleitung/Beispiel: Support Microsoft Szenarien
Datentabellen
Hier kann man einen Zellbereich mit unterschiedlichen Werten vorgeben und erhält entsprechende Antworten (Berechnungen) auf die eigenen Werte.
Bild: Übung zu Datentabelle - Link zu Anleitung/Beispiel: Support Microsoft Datentabelle
Zielwertsuche
Alles "rückwärts": wir kennen das Ergebnis - bzw. geben dieses vor - und wollen den Wert / oder die nötigen entsprechenden Eingaben ermitteln.
Bild: Übung zu Zielwertsuche - Link zu Anleitung/Beispiel: Support Microsoft Zielwertsuche
Spätestens für die Zielwertsuche gibt es auch freie Tools oder Erweiterungen für Excel: siehe Stichworte Solver oder Solver-Add-Ins.
Die folgende Darstellung zeig eine Kombination neuerer Funktionen in Kombination mit Drop-Down-Listen über Datenüberprüfung.
Hier eine Infoliste zu den beteiligten Techniken - die Funktionen stehen erst mit Excel 2021 und 365 zur Verfügung!
Eine weitere spannende moderne Funktion ist die FILTER() Link: https://support.microsoft.com/de-de/office/filter-funktion-f4f7cb66-82eb-4767-8f7c-4877ad80c759
Eine seminarinterne Recherche hat folgende Quelle mit Nachbauten fehlender Funktionen in Vorversionen Excel ergeben Anm.: noch nicht von mir gecheckt/getestet - ich habe ja Zugriff auf 365 ;-)
... eine Übersicht ohne Anspruch auf Vollständigkeit und für Ihre Recherchen im/nach dem Seminar ...
Sechs neue Diagramm-Typen erleichtern die Darstellung von Daten, ohne diese erst umarbeiten zu müssen.
Das ist aber noch nicht alles. Hier ein paar Stichworte zu den neuen Techniken:
Warum mal "neue" Techniken kursiv oder in Anführungszeichen? Manche der Neuerungen wurden auch schon vor 2016 eingeführt. Dabei manchmal sogar eher "still und heimlich", um die Techniken mal mit den Nutzern zu evaluieren.
Hier für den Anfang ein paar Techniken zum Nachschlagen:
Schnellanalyse
seit Excel 2013; Tipp: einfach mal Tabelle mit Daten markieren und dann auf Schnellauswahl-Werkzeug unten rechts klicken.
Links für Schnellanalyse:
Blitzvorschau
eine Option - also: Menüband Datei - Optionen - Registerkarte: Erweitert - Automatische Blitzvorschau; aktivieren mit Shortcut Strg + E
Links Blitzvorschau:
Datenschnitt - jetzt universell einsetzbar
Menüband Einfügen - Gruppe Filter - Datenschnitt; Datenschnitte gehören klassisch zu Pivot, können aber auch bei anderen Datenaufbereitungen genutzt werdenVorbedingung: Tabellenbereiche "als Tabelle formatieren"
LInk Datenschnitt:
Empfohlene Pivot-Tabellen
einfach nur PivotTable mal schnell per Klick... Anm.: wer meine Best Practices kennt - ich bin ja nicht so für die "1-Klick-Solutions" ;-)
Tabellen-Datenmodell mit Beziehungen zwischen "Tabellen"
Excel goes Database... geht in Richtung Power View mit Power BI (Business Intelligence) ToolsPower View muss(te) erst einmal als Schaltfläche angeboten und installiert (Silverlight) werden
Beispielhafte Anleitung für Aktivieren der Schaltfläche für "Power View":
Power Pivot integriert
Und wieder Datenbank-Profitechnik und BI: Leistungsstarke Datenanalyse und -Modellierung
LInks Power Pivot:
ganz ehrlich: eine Riesenbaustelle und absolute DB-/Excel-Profitechnik Richtung Big Data und BI!
Externe Datenquellen
ging schon immer... siehe Access-Tabellen, SQL-Connections, ...
Zeitachse in Pivot-Auswertungen
seit Excel 2013... Funktioniert wie die Technik der Datenschnittehier: PivotTable-Tools - Menüband Analysieren - Gruppe Filtern - Zeitachse einfügen
Prognose
seit Excel 2016 - Menüband Daten - Gruppe Prognosen - Prognoseblatt
Link Prognose:
Es folgen Direktlinks und Infos zu Diagramm-Techniken:
Daten nach Häufigkeit anzeigen lassen
Links Histogramm:
Pareto
eigentlich: sortiertes Histogramm
Link Pareto:
Sechs neue Diagramm-Typen ermöglichen weitere Darstellung von Daten
Überblick Diagramme:
Treemap und Sunburst) - für Treemap und Sunburst (Beispieldaten)
Treemap
Sunburst
auch Brückendiagramme genannt
engl.: Box and Whiskers
Andere erwähnenswerte Diagrammtechniken:
Blasendiagramm - eigentlich schon seit Excel 2007 (!)
3D-Karte - komplett neue 3D-/Visualisierungstechnik - sehr Performancehungrig!
Viel Spaß mit dieser Zusammenfassung und dem Auprobieren der "neuen" Techniken
Seminarende:
Ihr Trainer Joe Brandes
Sie finden auf dieser Seite - als auch auf meiner privaten Visitenkarte joe-brandes.de einige Hintergrundinformationen zu mir und meinem Background.Natürlich stellt die IT einen Schwerpunkt in meinem Leben dar - aber eben nicht nur ...
Private Visitenkarte / Technik: HTML & CSS joe-brandes.de
Ich erarbeite und konzipiere seit über 30 Jahren IT-Seminare und -Konzepte. Hierfür stehen der "PC-Systembetreuer / FITSN" und der "CMS Online Designer / CMSOD". Ich stehe Ihnen gerne als Ansprechpartner für Ihre Fragen rund um diese und andere IT-Themen zur Verfügung!
BECSS Visitenkarte / Technik: HTML & CSS becss.de
Wer einmal zum Snookerqueue gegriffen hat, der wird es wohl nicht wieder weglegen. Und ich spiele auch immer wieder gerne eine Partie Billard mit den Kumpels und Vereinskameraden. Der Verein freut sich über jeden, der einmal in unserem schicken Vereinsheim vorbeischauen möchte.
Billard Sport BS / nicht mehr von mir betreut billard-bs.de