Aufgaben zu Excel Aufgabe Ersetzen1 (Makro aufzeichnen) Zeichnen Sie je ein Makro auf, das a) eine Excel-Tabelle geeignet umformatiert (fette und größere Überschrift, Ausrichtung ohne Zeilenumbruch, bestimmte Spalten im Euroformat usw.) b) in allen Formeln einer Excel-Tabelle ein B1 in ein $B$1 umwandelt (Menü: Bearbeiten + Ersetzen). Der alte Wert (B1) und der neue ($B$1) sollen in den Zellen E1 und E2 stehen Legen Sie die Ausführung der Makros auf je eine Schaltfläche (Button aus Symbolleiste Formular). Aufgabe Gewinn Erstellen Sie eine benutzerdefinierte Funktion, die den Gewinn aus einem Verkauf auf Basis von Stückzahl, Kosten, Preis und Steuersatz wie folgt berechnet: Gewinn = Stückzahl * (Preis - Kosten) * (1 - Steuersatz) Die Parameter Stückzahl usw. sollen in Excel-Zellen stehen. Alternative: die Parameter in den Excel-Zellen haben geeignete Namen. Aufgabe GGD Erstellen Sie eine benutzerdefinierte Funktion, die aus einer Zeitreihe von Werten einen gleitenden gewichteten Durchschnitt (GGD) ermittelt. Die Zeitreihe soll in einem zusammenhängenden horizontalen oder vertikalen Bereich der Exceltabelle stehen. Formel für den GGD: GGDn+1 = (1 * Z1 + … + n * Zn) / (1 + … + n ) n GGDn 1 i * Z i 1 i n i i 1 n = Zeitraum in Tagen, über den der GGD berechnet wird; Z1 ist der älteste Wert Beim GGD werden die n Vergangenheitswerte gemäß ihrem Alter mit 1 bis n gewichtet, wobei der jünste Wert das höchste Gewicht erhält. Beispiel: Für die Zeitreihe (2, 4, 3, 1) ist n=4 und GGD5 = (1*2 + 2*4 + 3*3 + 4*1)/(1+2+3+4) = 23/10 = 2,3 Aufgabe Leerzeilen Beschreiben sie eine Tabelle von A1 bis E20 mit Daten. Löschen Sie dann den Inhalt einiger Zeilen aus diesem Bereich, wobei auch mehrere Leerzeilen hintereinander auftreten sollen. Schreiben Sie nun eine Sub, die die überflüssigen Leerzeilen auf Buttonclick löscht, d.h. den Teil unterhalb der Leerzeile nach oben schiebt. Aufgabe Umsatzkopieren Erstellen Sie eine Funktion Umsatzkopieren(), die aus einer Umsatzliste in der Form Datum 03.01.2003 04.01.2003 05.01.2003 06.01.2003 07.01.2003 Name Umsatz Meier Müller Meier Müller Schmidt 500,00 € 700,00 € 600,00 € 700,00 € 700,00 € alle Umsätze zu einem bestimmten Namen, der per Inputbox eingegeben wird, in einen Zielbereich rechts daneben kopiert. Der Zielbereich soll vorher gelöscht werden. Es sollen max. 30 Umsätze vorliegen. Aufgabe Namen markieren Erstellen Sie eine sub, die alle Namen in einer Liste mit Name/Datum/Umsatz markiert, die einem vorgegebenen Namen entsprechen. Zusätzlich soll der Gesamtumsatz für diesen Namen errechnet werden. Aufgabe Tipp-Punkte a) Erstellen Sie eine Funktion punkte(), die die Punkte abhängig vom Ergebnis liefert: Ergebnis Punkte 0:2 0 1:1 1 2:1 3 21:15 3 b) Erstellen Sie ein Funktion tippPunkte(), die aus einem Tipp und dem Ergebnis die u.a. Punkte berechnet. Spiel Bayern München Hansa Rostock Herta BSC Berlin Bayer Leverkusen FC Köln München 1860 Tipp Ergebnis 3:1 3:1 2:1 4:0 3:0 1:2 Tipp-Punkte 2 1 0 Aufgabe Provision Schreiben Sie je eine Funktion, die a) die Summe der Umsätze zu einem Namen, der in einer Zelle steht, aus einer Umsatzliste mit Datum/Name/Umsatz ermittelt und b) die Provision zu dem Namen gemäß des Umsatzes berechnet und in eine bestimmte Zelle schreibt. Die Provision wird in % vom Umsatz gezahlt und in einer Provisionstabelle enthalten: Umsatz 100,00 € 200,00 € 500,00 € 1.000,00 € Prozent 0% 10% 20% 30% Aufgabe Adressen erfassen (Formular) Erfassen Sie eine Adressliste (z.B. mit Name, Vorname, Anrede, Tel-Nr, HandyNr, Straße, PLZ, Ort, Geb-Dat, Schulden, Single) in eine Excel-Tabelle, wobei die Daten über ein Formular eingegeben werden. Dabei soll – – – der Wert Single (ja/nein) per Checkbox eingetragen werden, die Anrede per Optionsbuttons (Herr, Frau) auswählbar sein, der Ort aus der Liste der bereits erfassten Orte in einer ComboBox auswählbar sein (evtl. sortiert) Die Adressen sollen in eine Tabelle "Adressen" in die nächste freie Zeile eingefügt werden (es sind bereits einige Adressen gespeichert). Wenn kein Name eingegeben wurde, soll eine Fehlermeldung "Kein Name!" in einem Meldungsfenster angezeigt werden. Aufgabe Auf Null runden Erstellen Sie eine Funktion aufNullRunden(), die einen Wert in einer Zelle auf Null abrundet, wenn der Wert < einem Grenzwert ist, z. B. < 0,01