Um Daten zu verarbeiten verwendet man meist Tabellenkalkulationsprogramms (auf Englisch Spreadsheets genannt) wie Microsoft Excel oder Google Sheets/Tabelle. Spreadsheets, die mit diesen beiden Programmen erstellt wurden, sind auch miteinander kompatibel.
Arbeite entweder mit Google Sheets oder mit Microsoft Excel.
Ziel: Grundlagen von Google Sheets / Microsoft Excel kennenlernen
Lade das folgende Dokument herunter und importiere dieses in ein Google Sheet Dokument. Für jede Teilaufgabe hat es ein eigenes Tabellenblatt (unten auswählen), welches bearbeitet werden soll. Studiere immer zuerst den zugehörigen Theorieblock und löse dann die Aufgabe.
Ein Spreadsheet ist eine Tabelle, welche aus einer Vielzahl von Zellen besteht:
Der Inhalt einer Zelle kann auf unterschiedliche Weisen interpretiert werden. Zum Beispiel kann der Inhalt 42
interpretiert werden als:
Löse die Teilaufgabe im Tabellenblatt „a) Zellen formatieren“. In der grünen Zelle B1 soll eine Zahl eingegeben werden. In den roten Zellen (B3, B4 usw.) darunter soll dieser Wert wie angegeben formatiert werden. Beachte, dass die roten Zellen einen Verweis auf B1 beinhalten. Ändert man den Wert in B1, passt sich der Wert in B3, B4 usw. daran an (mehr dazu weiter unten). Ändere den Inhalt der roten Zellen also nicht, formatiere diesen nur.
Möchte man von einer Zelle auf den Inhalt einer anderen Zelle zugreifen, so kann man einen Verweis auf diese Zelle (auch Zellbezug oder Referenz) erstellen. Ändert man den Wert der Zelle, so verändern sich auch die Werte aller Zellen, die auf diese verweisen, zum Beispiel =D4
.
Wird eine Zeile ausgewählt, so erscheint unten recht von der Zelle ein kleiner Kreis. Mit diesem kann man den Zelleninhalt auf die benachbarten Zellen übertragen (Autovervollständigung), wobei die Verweise angepasst werden. Zieht man den Verweis =D4
um eins nach unten, so passt sich die Zeile des Verweises auf =D5
an. Zieht man sie hingegen nach rechts, so passt sich die Spalte an, also =E4
. Möchte man dies nicht, so kann man die Zeile und/oder Spalte mit einem Dollarsymbol $
fixieren. Verwendet man ein $
, so spricht man von absoluten Zellbezügen resp. von relativen Zellbezügen, wenn man keine verwendet.
Zellbezüge
=<Bezeichnung der Zelle>
, zum Beispiel =D4
=D$4
=$D4
=$D$4
Mit Spreadsheets kann einfach gerechnet werden: Beginne dazu den Inhalt einer Zelle mit einem Gleichheitszeichen =
. Verweise sind bespielsweise nützlich, um mit den Werten in den Zellen zu rechnen. Zum Beispiel kann man mit =B1+C1
die Werte, die in B1 und C1 stehen addieren.
Löse die Teilaufgabe im Tabellenblatt „b) Verweise“. In den roten Zellen soll die Summen der jeweiligen Zahlen in den grünen Zellen („Zahl 1“ + „Zahl 2“) berechnet werden. In den Blauen Zellen soll immer das Produkt der jeweiligen „Zahl 1“ x Faktor berechnet werden. Passt man die Werte in den grünen Zellen an, sollen sich die Resultate in den roten und blauen Zellen entsprechend anpassen.
Tipps:
Es gibt auch viele vordefinierte Funktionen wie =SUM(...)
mit der man einfach die Summe vieler Zellen berechnen kann. Im folgenden Beispiel wird die Summe aller Zellen von A1 bis und mit A6 berechnet:
Beachte, dass die Funktionsnamen in Microsoft Excel (leider) auf Deutsch übersetzt wurden. Beispiel: SUM(...)
in Google Sheets entspricht SUMME(...)
in Excel.
Einfache Funktionen
Berechne in „c) Einfache Funktionen“ die Summe aller Zahlen in den grünen Zellen, sowie die Quadratwurzeln aller Zahlen in der ersten Spalte.
Die Autovervollständigung haben wir bereits oben angetroffen. Mit ihr kann man den Inhalt einer Zelle ganz einfach auf die benachbarten Zellen übertragen. Verweise werden entsprechend angepasst, falls Zeilen/Spalten nicht mit $
fixiert werden. Es gibt aber auch andere intelligente Arten der Autovervollständigung. Beinhalten zum Beispiel Zellen A1 und A2 die Werte $1$ und $2$. Markiert man beide Zellen gleichzeitig und wendet man die Autovervollständigung an, so werden die Zellen darunter mit den Werten $3, 4, 5, \ldots$ vervollständigt.
Autovervollständigung
Tipp: Nutze wann immer möglich die Autovervollständigung. Vermeide mühsames Copy-Paste von Zelle zu Zelle.
Löse die Aufgabe in „d) Berechne in „d) Autovervollständigung“. Ziel ist, die folgende Tabelle mit möglichst wenig Aufwand zu reproduzieren:
Die Werte der roten Zellen sind die Produkte der beiden Zahlen in den grünen Zellen der jeweiligen Spalte und Reihe. Ändert man also die Werte in den grünen Zellen, passen sich die roten an.
Zusammen lösen:
Ziel: Erstelle in eine Notentabelle, ähnlich zu derjenigen, die dir die Schule zur Verfügung stellt.
Tipps:
KRITERIEN | ERFÜLLT? |
---|---|
Darstellung | |
Schriftgrösse, normal/fett stimmen überein | $\square$ |
gewisse Zellen eingefärbt | $\square$ |
passende Zeilenhöhe & Spaltenbreite | $\square$ |
Spalten für einzelne Noten haben alle gleiche Breite | $\square$ |
Zelleninhalte horizontal richtig (z.T. links, z.T. mittig) ausgerichtet | $\square$ |
Zelleninhalte vertikal mittig ausgerichtet | $\square$ |
passende Rahmen mit untersch. Dicken | $\square$ |
Durchschnitt mit 2 NKS angezeigt (Stichwort: Zelle formatieren) | $\square$ |
Logik | |
für jedes Fach einzeln Mittelwert berechnet | $\square$ |
Mittelwert-Berechnung funktioniert für 1-20 Noten (also nicht nur für die gerade eingetragenen) | $\square$ |
Zeugnisnote auf 0.5 Noten gerundet, Noten wie $5$ werden ohne NKS dargestellt | $\square$ |
Durchschnitt / Mittelwert bestimmen
Berechne mit =AVERAGE(...)
(dt. =MITTELWERT()
) den Mittelwert oder Durchschnitt mehrerer Zellen.
Runden
=ROUND()
: normales Runden, z.B. =ROUND(3.14159,2)
rundet auf 2 Nachkommastellen=MROUND(...)
(de: =VRUNDEN(...)
): Runden auf Vielfaches von Zahl, z.B. =MROUND(5.28,0.5)
rundet auf $5.5$Tipps:
""
aus. Anderenfalls berechnet man den Durchschnitt. Für diese Fallunterscheidung benötigen wir die IF-Funktion (siehe Theorie unten), In Pseudocode sieht das etwa wie folgt aus: =IF(<Anzahl Noten = 0>,"",<Berechnung Durchschnitt>).
Darstellung | Erfüllt? |
---|---|
die gerundeten Zeugnisnoten mit formatierten Bedingungen einfärben (rot falls UG, grün falls G) |
Logik | Erfüllt? |
---|---|
Berechnete Noten werden nur angezeigt, wenn Noten vom Fach vorhanden sind | $\square$ |
Mittelwerte von „Durchschnitte“ und „Zeugnisnoten“ der einzelnen Fächer berechnen | $\square$ |
Berechnung der Plus- und Minuspunkte | $\square$ |
Berechne Summe der Plus- und Minuspunkte | $\square$ |
Berechnete Werte werden nur angezeigt, wenn überhaupt Noten vorliegen | $\square$ |
Bedingte Formatierung
Die Formatierung einer Zelle (z.B. Hintergrundfarbe) kann man vom Inhalt abhängig machen. Z.B. kann eine Zelle die Hintergrundfarbe rot haben, falls der Wert darin kleiner als 4 ist.
Vorgehen: Rechte Maustaste auf Zelle → „Weitere Aktionen für Zellen aufrufen“ → „Bedingte Formatierung“ → Einstellungen vornehmen
IF-Verzweigungen
Soll der Inhalt einer Zelle von einer Bedingung abhängen, verwenden wir die IF-Funktion (dt. WENN). Diese hat immer die Form:
`=IF(<Bedingung>,<Zelleninhalt falls erfüllt>,< Zelleninhalt falls nicht>`
Dies entspricht dem if-else in Python (siehe unten).
Beispiel: =IF(B2>=4,"Genügend","Ungenügend")
, in der Zelle wird „Genügend“ oder „Ungenügend“ angezeigt, je nachdem, welchen Wert die Zelle B2 hat.
Für eine Verzweigung mit mehreren Bedingungen verwendet man die IFS/WENNS-Funktion:
`IFS(<Bedingung 1>,<Wert 1>,<Bedingung 2>,<Wert 2>,...)`
Als ähnliche Alternative gibt es noch die SWITCH-Funktion.
Beachte: Das hier wird im Gegensatz zu den meisten Programmiersprachen ein einfaches Gleichheitszeichen verwendet, um Gleichheit zu überprüfen.
Das IF in Spreadsheets, entspricht in etwa dem if-else in Python:
if <Bedingung>: # Code falls Bedingung erfüllt else: # Code falls Bedingung nicht erfüllt
Anzahl Werte zählen
Mit dem folgenden Befehl zählt man, wie viele der angegebenen Zellen Zahlen beinhalten:
`=COUNT(<Zellenbereich>)`
Dies ist besonders nützlich, wenn man eine Berechnung nur dann durchführen will, wenn die dafür benötigten Zellen nicht leer sind.
KRITERIEN | ERFÜLLT? |
---|---|
Darstellung | |
Zellen bei „Promotion“, in Legende und bei Name/Klasse/Semester passend zu grossen Zellen verbunden | $\square$ |
Text “(KEINE) PROMOTION„ wird vertikal dargestellt | $\square$ |
Legende eingefärbt | $\square$ |
Farbe der Zellen zur „Promotion“ mit bedingter Formatierung grün / rot eingefärbt | $\square$ |
Für Anzahl UGs wird benutzerdefinierte Zellenformatierungen verwendet | $\square$ |
Logik | |
Anzahl UG (siehe Theorie zu COUNTIF unten) | $\square$ |
Bei „Promotion“ wird je nach Noten „PROMOTION“ oder „KEINE PROMOTION“ angezeigt (siehe Tipps unten) | $\square$ |
$\square$ |
Bemerkungen:
Logische Operatoren
Mit den logischen Operatoren AND, OR und XOR kann man mehrere Bedingungen miteinander verknüpfen. Der folgende Ausdruck nimmt den Wert „True“ („False“) an, falls beide Bedingungen erfüllt sind:
`=AND(<Bedingung 1>,<Bedingung 2>`
Den OR-Operator benutzt man genau gleich, nur reicht es hier, dass eine der Bedingungen erfüllt ist. Typischerweise verwendet man diese logischen Operatoren in der IF-Funktion.
Beispiel: Mit dem folgenden Befehl kann man ermitteln, ob in beiden Zellen A1 und B1 positive Zahlen stehen:
=IF(AND(A1>=0,B1>=0),"beide Zellen positiv","mind. eine Zelle negativ")
Erinnerung: Diese logischen Operatoren entsprechen and
, or
und ^
in Python.
Zählen wenn Bedingung erfüllt
Mit den Befehl COUNTIF / ZÄHLENWENN kann man in einem Bereich die Anzahl Zellen zählen, die eine bestimmte Bedingung erfüllen:
=COUNTIF(<Zellenbereich>,<Bedingung in Anführungs- & Schlusszeichen>)
Zum Beispiel zählt man mit dem Befehl =COUNTIF(A1:A10,">0")
die Anzahl Zellen im Bereich A1:A10, welche Werte grösser Null beinhalten.
KRITERIEN | ERFÜLLT? |
---|---|
Darstellung | |
Bedingte Formatierung für alle drei Fälle der Promotion | $\square$ |
Zelle Z6 mit Überschrift „Promotion“ wird auch bedingt formatiert (siehe Theorie unten) | $\square$ |
Logik | |
Auch Fall „KNAPP PROMOVIERT“ implementiert | $\square$ |
Bedingte Formatierung mit benutzerdefinierter Formel
Die Formatierung einer Zelle kann vom Inhalt einer anderen Zelle abhängen. Verwende dazu eine bedingte Formatierung mit „Benutzerdefinierte Formel ist“. Ins Formel-Feld kann dann eine Formel getippt werden, die von einer anderen Zelle abhängt, in der Form =IF(<Bedingung>,1,0)
. Falls die Bedingung (nicht) erfüllt ist, nimmt nimmt der Befehl den Wert 1 (0) an und die bedingte Formatierung wird (nicht) aktiviert.
Erweitere deine Notentabelle weiter, z.B.:
Mit Spreadsheets kann man ganz einfach Rechnungen mit Daten machen. Damit kannst du Fragen wie die folgenden ganz einfach beantworten.
Arbeiten mit Daten
=TODAY()
/ =HEUTE()
gibt den Wert des heutigen Datums an (ändert sich jeden Tag).Beispiel: Der 17.04.2023 entspricht der Zahl $45033$. Addiert man nun $365$ zu dieser Zahl, entspricht diese dem Datum 16.04.2024 (weil 2024 ein Schaltjahr ist).
Schreibe nun ein Programm, in dem man die Geburtsdaten zweier Personen eintippen kann: Person 1 ist älter als Person 2. Der Code berechnet und gibt aus: