Tabellen_Formulare_Schaltflächen_VBA.odt Autor: <AUTORNAME> Version:1.0 VBA Programmierung Einführung Modulname: Pizzaformular Stand: 8. Dez 2016 Christine Janischek Berufliches Schulzentrum Wangen Seite 1 von 9
Tabellen_Formulare_Schaltflächen_VBA.odt Autor: <AUTORNAME> Version:1.0 Inhaltsverzeichnis 1 Pizzaformular...3 Berufliches Schulzentrum Wangen Seite 2 von 9
1 Pizzaformular Situation: Luigi ist Besitzer einer kleinen Pizzabäckerei in Wangen im Allgäu. Der Rechnungsbetrag sein Angebot Pizza nach Wunsch, ergibt sich aus folgen Informationen. Informationen: Basispreis Basispreis mit mit Tomaten Tomaten Käse: Käse: 4,50 4,50 Berechnung Berechnung Pizza Pizza nach nach Wunsch: Wunsch: Auswahl Auswahl Pizzabeläge: Pizzabeläge: 0.5 0.5 Salami Salami 0.5 0.5 Pilze Pilze 0.3 0.3 Artischocken Artischocken 0.3 0.3 Rechnungsbetrag Rechnungsbetrag Basispreis Basispreis Salami Salami Pilze Pilze Artischocken Artischocken
Problemstellung: Luigi hat sich vor Kurzem ein Laptop gekauft möchte künftig Rechnungsbetrag Pizza nach Wunsch mit dem Tabellenkalkulationsprogramm MS Excel berechnen. Bart ist Praktikant freut sich wie Schmidts Katze, dass er nicht mehr nur Gemüse schnippeln, sonn auch am neuen Laptop arbeiten darf. Er hat bereits konkrete Vorstellungen davon, wie Tabelle aussehen funktionieren soll! Die Die Tabelle Tabelle (das (das Formular) Formular) soll soll folgende folgende Elemente Elemente nutzen: nutzen: Eine Eine Zelle Zelle Basispizza. Basispizza. Formular-Steuerelemente Formular-Steuerelemente Auswahl Auswahl Beläge. Beläge. Ein Ein Formular-Steuerelement Formular-Steuerelement zur zur Berechnung Berechnung des des Rechnungsbetrages Rechnungsbetrages Pizza Pizza nach nach Wunsch. Wunsch. Caption: Caption: berechnen. berechnen. Ein Ein weiteres weiteres Formular-Steuerelement Formular-Steuerelement um um gemachte gemachte Eingaben Eingaben per per Klick Klick löschen löschen zu zu können. können. Caption: Caption: Eingaben Eingaben löschen. löschen. CheckBox Schaltfläche Hinweis: Verwen Sie ActiveX-Steuerelemente Fall, dass Sie Formulare mit Hilfe Makroprogrammierung interaktiv gestalten möchten.
Klicken Sie Komponente an wählen Sie im Kontextmenü Option Eigenschaften. Geben Sie Eigenschaften Name, Caption Gruppennamen einen ein. Hinweis: Merken Sie sich e Eigenschaft Name! Klicken Sie danach Komponenten mit einem Doppelklick an um Click-Metho zu deklarieren.
Helferlein VBA-Programmierung Check-Box-Metho: 'Die 'Die Check-Box-Methode Check-Box-Methode merkt merkt sich sich "True", "True", wenn wenn Check-Box Check-Box ein ein Häckchen Häckchen hat. hat. Wenn Wenn kein kein Häckchen Häckchen gesetzt gesetzt ist ist merkt merkt sie sie sich sich "False". "False". Hier Hier am am Beispiel Beispiel speichert speichert sie sie jeweiligen jeweiligen im im Attribut Attribut cb. cb. Private Private Sub Sub cb_click() End End Sub Sub Helferlein VBA-Programmierung Command-Button-Methode - btberechnen_click(): 'Die 'Die Command-Button-Methode Command-Button-Methode Berechnung. Berechnung. Diese Diese Methode Methode enthält enthält vier vier Kontrollstrukturen Kontrollstrukturen (IF- (IF- Anweisungen), Anweisungen), überprüfen überprüfen welche welche Check-Boxen Check-Boxen angeklickt angeklickt wurde, wurde, das das Ergebnis Ergebnis berechnet berechnet das das Ergebnis Ergebnis auf auf zwei zwei Weisen Weisen (Zelle (Zelle MessageBox) MessageBox) ausgibt. ausgibt. Private Private Sub Sub btberechnen_click() Dim Dim d,... As As Double Double Dim Dim b,... As As Boolean Boolean ' ' If If Then Then Else Else End End If If ' ' Salami Salami If If Then Then Else Else End End If If ' ' Pilze Pilze If If Then Then Else Else End End If If ' ' Artischocken If If Then Then Else Else End End If If ' ' Berechnung des des Rechnungsbetrages (RB) (RB) dergebnis dergebnis ' ' Ausgabe Ausgabe des des RB RB in in einer einer bestimmten Zelle Zelle Tabelle<Nr>.Cells(ZeilenNr,SpaltenNr) dergebnis dergebnis ' ' Ausgabe Ausgabe des des RB RB in in einem einem Dialogfenster Msg Msg "Der "Der Rechnungsbetrag Pizza Pizza beträgt: beträgt: " & dergebnis dergebnis & " " " End End Sub Sub
Helferlein VBA-Programmierung CommandButton-Methode eingabenloeschen_click(): 'Die 'Die Check-Box-Methode merkt merkt sich sich "WAHR", "WAHR", wenn wenn Check-Box Check-Box ein ein Häckchen Häckchen hat. hat. Wenn Wenn kein kein Häckchen Häckchen gesetzt gesetzt ist ist merkt merkt sie sie sich sich "FALSCH". "FALSCH". Hier Hier am am Beispiel Beispiel speichert speichert sie sie jeweiligen im im Attribut Attribut cb. Private Private Sub Sub eingabenloeschen_click() 'jedes 'jedes Check-Box-Attribut erhält erhält False False cb.[ ] False False... 'Um 'Um Zelle Zelle des des Rechnungsbetrages zu zu löschen löschen wir wir sie sie mit mit nichts nichts überschrieben. Tabelle<Nr>.Cells(ZeilenNr,SpaltenNr) "" "" 'Mit 'Mit einer einer MessageBox teilt teilt das das System System mit mit ob ob eine eine Berechnung bzw. bzw. o o Operation Operation plausibel, also also annehmbar, einleuchtend nachvollziehbar ist. ist. MsgBox MsgBox ("Die ("Die Tabelleninhalte wur wur zurückgesetzt!") End End Sub Sub Hinweise: 1. Das Tabellenkalkulationsprogramm Excel Starten: 2. Die Formular-Steuerelemente fin Sie in Menüleiste Entwicklertools ( ggf. unter Datei Optionen Menüband anpasse Entwicklertools aktivieren) 3. Auf dem Lehrer-PC ist Lösung geöffnet. Wenn Sie nicht mehr weiter wissen Ihr Partner auch nicht helfen kann, können Sie sich selbstständig informieren. Nutzen Sie se Möglichkeit erst in letzter Instanz! 4. Einige Gruppen wer Ihr Ergebnis präsentieren, nutzen Sie verfügbare Zeit deshalb sinnvoll.
Aufgabenstellung: (60 min) Ihre Aufgabe ist es in Abbildung Pizza nach Wunsch dargestellte Tabelle zu erstellen mit benötigten Formular-Steuerelementen, VBA-Attributen Metho auszustatten. Der Weg bis ans Ziel ist in Aufgaben 1 bis X beschrieben. Hauchen Sie sem System Leben ein. Nach Ihren Eingriffen, wird es ein Hauch intelligenter sein. Das System erfüllt damit seinen Zweck! Hinweis: Die Angaben im Informationsblatt unterstützen Sie bei Ihrem Vorhaben. Die Hinweise helfen Ihnen bei Lösung. Einige können im Anschluss Ihre Ergebnisse präsentieren.. Aufgaben: 1. Öffnen Sie das Tabellenkalkulationsprogramm Excel. 2. Speichern Sie das Neue Dokument (Mappe1) unter dem Namen PizzaNachWunsch.xlsm in einem neuen Ordner Ihren Namen trägt. 3. Erstellen Sie in Abbildung: Pizza nach Wunsch gezeigte Tabelle (System). a. Die Überschrift Pizza nach Wunsch gehört in Zeile 1, ist zentriert verbindet Spalten A bis G. b. Die Bezeichnung Basispizza mit Tomaten Käse: steht in Zeile 3, Spalte A ist linksbündig. Hinweis: Passen Sie Spaltenbreite an. c. In Zeile 3, Spalte B steht Basispreis 4,50. Formatieren Sie Zelle, sodass Währung 2 Dezimalstellen angezeigt wer. Hinweis: Zelle anklicken rechte Maustaste im Kontextmenü Zellen formatieren auswählen. Auf Karteikarte Zahlen können Sie Einstellungen Währung vornehmen.
Die Bezeichnung Auswahl Pizzabeläge: steht in Zeile 4, Spalte A a. Platzieren Sie vier Formular-Steuerelement-Kontrollkästchen auf Höhe Zeile 5, Spalte B, untereinan. Hinweis: Falls Sie Steuerelemente nicht angezeigt wer, änn Sie das unter Datei Optionen Menüband anpasse Entwicklertools aktivieren OK. b. Platzieren Sie bei Formular-Steuerelement-Befehlsschaltflächen auf Höhe Zeile 17, Spalte D, nebeneinan. c. Falls Sie sich noch nicht im Entwicklermodus befin klicken Sie Schaltfläche Entwurfsmodus in Symbolleiste Steuerelemente. Hinweis: Falls Sie Das Schaltfläche nicht angezeigt wird, änn Sie das in Menüleiste unter Ansicht Symbolleisten Steuerelemente. d. Wenn Sie nun einzelnen Kontrollkästchen (CheckBoxen) mit linken Maustaste doppelt anklicken gelangen Sie in VBA-Modus. Im Eigenschaftsfenster können Sie jeweils Attribute Namen Caption anpassen. Hinweis: Bestätigen Sie Ihre Änungen mit Eingabetaste. Ein Beispiel benötigten Quellcode fin Sie auf dem Informationsblatt Seite 3 (oben). e. Gehen Sie auf gleiche Weise vor Befehlsschaltflächen (CommandButtons) berechnen Eingaben löschen. f. Erstellen Sie Quellcode Metho btberechnen_click() bteingabeloeschen_click(). Hinweis: Ein noch lückenhaftes Beispiel benötigten Quellcode fin Sie auf dem Informationsblatt Seite 3 (unten) Seite 4. Die dazu benötigte Ergebniszelle befindet sich in Zeilennummer 17, Spaltennummer 2. Ergänzen Sie Deklaration notwendiger Attribute vervollständigen Sie IF-Anweisungen. g. Die Bezeichnung Rechnungsbetrag: steht in Zeile 17, Spalte A ist linksbündig. h. Vervollständigen Sie nun nachträglich das auf Seite 7 dargestellte Struktogramm Methode btberechnen_click(). Zusatzaufgabe: j. Passen Sie Tabelle Formular-Steuerelemente farblich an. k. Erstellen Sie nachträglich ein elektronisches Struktogramm Methode btberechnen_click(). Nutzen Sie Software Struktogrammer.