Präsentation über "Makros in Excel"

zomfg

Ensign
Registriert
Juli 2010
Beiträge
167
Guten Tag zusammen,

es geht darum, dass ich für die Schule eine Powerpoint-Präsentation erstellen muss und mein Lehrer hat mir das Thema "Makros in Excel" vorgeschlagen.

Bisher habe ich erklärt, was Makros überhaupt sind und wie man diese mit dem Makrorecorder aufzeichnet.

Mein Problem an dieser Sache ist nun leider, dass ich noch nie etwas mit VBA gemacht habe und dies auch den zeitlichen Rahmen der Päsentation (ca. 5 Minuten) sprengen würde, um darüber ein Beispiel zu erstellen und dieses zu erklären.

Nun wollte ich mich ausschließlich mit dem Makrorecorder beschäftigen. Jedoch finde ich kein vernünftiges Beispiel oder eine Aufgabe, an der man die Funktionalität und den Nutzen dieser Funktion sinnvoll darstellen kann...

Ich weiß einfach nicht, wie ich meinen Mitschülern erklären soll, wozu das eigentlich gut sein soll und wofür man es sinnvoll anwendet und gebraucht :(

Ich hoffe, ihr könnt mir ein paar Anregungen oder Hilfen geben.
Danke im Voraus :)
 
Zuletzt bearbeitet:
Datenimport von tab-getrennten messwerten (Text-file) in eine Exceltabelle?!
 
Ein sehr simples Beispiel:

Du willst in einer Tabelle Zellen unterschiedlich formatieren. Einmal sollen die Zellen mit rotem Hintergrund und fetter Schrift dargestellt werden, einmal mit grünem Hintergrund und kursiv. Du könntest jetzt jede Zelle einzeln mit den jeweiligen Formaten auszeichnen, was für jede Zelle zwei Klicks bedeutet. (plus Wechsel der ausgewählten Hintergrundfarbe, wenn die letzte gewählte Zelle eine grüne war und die aktuelle rot gefärbt werden soll)

Alternativ nimmst du für die rot+fett bzw. grün+kursiv Auszeichnung je ein Makro auf.

Hoffe das hilft.
LG! Ranger
Ergänzung ()

T3mp3sT1187 schrieb:
Datenimport von tab-getrennten messwerten (Text-file) in eine Exceltabelle?!

wenn die Werte tab-getrennt sind, kannst du Sie einfach ins Excel-File kopieren!?!
 
Zuletzt bearbeitet:
T3mp3sT1187 schrieb:
Datenimport von tab-getrennten messwerten (Text-file) in eine Exceltabelle?!
Ich verstehe ehrlich gesagt nicht, was du damit meinst :x

@bauerranger: das hört sich ganz gut an, werde mir mal ne Tabelle erstellen und versuchen, ob ich das hinkriege :)
 
Wenns nicht klappt, einfach nochmal melden. :)
Sollte aber recht simpel sein. Einfach die Makroaufzeichnung starten, und die Schaltfläche "fett" und dann die Farbe "rot" auswählen. Danach die Aufzeichnung beenden. Achte darauf, dass du nach Beginn der Aufzeichnung wirklich nur das machst, weil so gut wie alles aufgezeichnet wird. Wählst du also zum Beispiel nach Beginn der Makro-Aufzeichnung eine Zelle aus, wird diese Zelle beim Ausführen des Makros immer ausgewählt. Ist natürlich nicht sinnvoll, weil du in meinem Beispiel das Makro ja auf unterschiedliche Zellen anwenden willst.

Edit: Das Beispiel bzw. die Sinnhaftigkeit des Makros wird vielleicht noch etwas offensichtlicher, wenn mehr Änderungen vorzunehmen sind. Also vielleicht noch zusätzlich Schriftgröße und Schriftausrichtung (zentriert, links- bzw. rechtsbündig) verändern.
 
Zuletzt bearbeitet:
Vielleicht verstehe ich gerade etwas falsch...aber angenommen, in einer Tabelle soll jede 2. Zelle einen roten Hintergrund haben, die Schrift in grün, kursiv und rechtsbündig sein. Denn müsste ich doch ohne Makro jede 2. Zelle markieren (mit Strg) und kann sie dann auf einmal formatieren.
Mit Makro wäre es doch aber genauso, oder irre ich mich da? Kann ich mit dem Makrorekorder einstellen, dass er nach der Formatierung einer Zelle die Zelle 2 Zeilen weiter unten markiert und gleichzeitig formatiert?
 
Ja, da verstehst du was falsch.
Es geht nicht darum, jede x-te Zelle zu formatieren.
Stell dir vor, du willst deine Tabelle so formatieren wie ichs geschrieben hab, um schnell einen Überblick zu bekommen. Du willst jetzt (nach welchen Kriterien auch immer) deine Zellen anhand Ihrer Werte und anderer Informationen in der selben Zeile in zwei Gruppen einteilen. Automatisiert geht´s nicht, weil du die Einteilung der Zellen nicht automatisieren kannst. (stell dir eine Liste vor, die von diversen Personen erstellt wird. Jede Person gibt die Werte selbst ein und benannt eventuell die Identifikationszelle der jeweiligen Zeile anders, z.B. der eine schreibt Auto, der andere PKW, es ist aber dasselbe gemeint - Automatisierung also nur schwer möglich bzw. nicht sinnvoll weil zu viele unterschiedliche Varianten vorkommen -- natürlich könnte man das auch über ein Makro lösen, das wäre aber wesentlich komplizierter und für den Threadersteller nicht sinnvoll um eine allgemeine Erklärung für Makros zu liefern)

Du gehst die Tabelle also zeilenweise durch und formatierst die Zellen nach deinen Kriterien. Natürlich können jetzt drei Zellen hintereinander die entsprechenden Kriterien erfüllen um in Gruppe 1 (rot und fett) eingeordnet zu werden. Anschließend kommen fünf Zellen die zu Gruppe 2 (grün und kursiv) gehören und so weiter und so fort.

Denke das sollte so verständlich sein.
 
Zuletzt bearbeitet:
okay, ich denke das habe ich soweit verstanden :)
Ist nur ein bisschen blöd solch ein Beispiel auf unsere Aufgaben in der Schule zu übertragen :/ Oder fällt dir dazu eventuell auch noch ein Beispiel ein, wodurch wir ein Nutzen oder Zeitersparnis hätten?
 
Also wenn die Tabelle 500+ Zeilen umfasst und du anstelle von fünf Klicks pro Zeile nur einen Klick brauchst, ist das schon ne ganz nette Zeitersparnis.
Außerdem fällt die Fehleranfälligkeit á la "Nur rot, aber nicht fett formatiert" weg. Du kannst mit dem Makro nicht eine von den Formatierungen in einer von den Zellen vergessen.
(abgesehen davon sind "Fließbandarbeiten" wo du hunderte Male die genau gleichen Schritte durchmachst einfach nervig und nagen an der Arbeits-Motivation)

Wie soll ich ein Beispiel nennen, das zu den Dingen passt die Ihr in der Schule macht, ohne zu wissen WAS ihr in der Schule macht??? Vielleicht versteh ich ja jetzt grad was falsch...
 
Zuletzt bearbeitet:
Okay, bei solchen großen Tabellen ist es natürlich deutlich einfacher.

In der Schule arbeiten wir halt mit relativ einfachen Formeln und Aufgaben, mit den Excel-Grundlagen sozusagen. Verschachtelte Wenn-Funktionen und SVerweis war schon das "Anspruchsvollste" :D. Aber eigentlich nichts mit aufwendigen Tabellen, bei deinen sich dieses Beispiel anwenden lässt.
 
okay, dann halt mit formeln.

nehmen wir an du verwendest eine Summenformel =Summe(A1:A4)
Du willst nicht nur die aktuelle Summe angezeigt bekommen, sondern auch nach einer Änderung noch den vorgehenden Summenwert. Du kannst den Wert der Summenformel mit Hilfe von "Inhalte einfügen" in einer anderen Zelle ablegen, bevor du einen der Werte in A1 bis A4 änderst. (um zu sehen welche Auswirkung deine Änderung hat und um einen Vergleichswert zu haben)
Du musst also:
1. Zelle mit Summenformel markieren und kopieren auswählen.
2. Rechtsklick in die Zielzelle machen und "Inhalte einfügen" auswählen.
3. Aus dem Kontextmenü "nur Werte" auswählen.

Oder du machst dir ein Makro, das das Ganze mit einem Tastendruck macht.

Das Beispiel macht halt auch wieder nur dann Sinn, wenn du das Ganze oft hintereinander machst, weil du mit unterschiedlichen Werteänderungen experimentierst, oder wenn du das Ganze mit wesentlich komplexeren Formeln und mehreren Wertekopier-Vorgängen gleichzeitig machst, um mehrere Werte gleichzeitig in unterschiedliche Zellen zu übertragen.

Wenn du nur einmal den Wert einer Summenformel übertragen willst, ist es natürlich Zeitverschwendung, dafür ein Makro aufzunehmen.

Edit: Wenn das auch nicht weiterhilft, wär ein Screenshot von einer Beispieltabelle hilfreich. Dann kann ich dir ein passendes Beispiel geben.
 
Zuletzt bearbeitet:
Irgendwie macht mich das noch nicht so glücklich. Ich hatte mir die ganze Sache einfacher vorgestellt...Deine Beispiele sind ja verständlich, aber sowas werden wir wahrscheinlich im Unterricht nicht brauchen :/ Wir kriegen halt die Aufgaben gestellt, meistens vorgefertigte Tabellen und sollen dann anhand der Formeln irgendwas ausrechnen, formatieren und nen Druckbereich festlegen. Alles total simpel eben :(

Mal ne Beispielaufgabe, die wir als letztes gemacht haben:

Anhang anzeigen Aufgabe Messe.rar
 
Zuletzt bearbeitet:
Wie gesagt, bitte eine Beispieltabelle posten, damit ich weiss, von was wir hier reden. Sich Beispiele anhand von ungefähren Angaben ausdenken, ist ein wenig mühsam. ;)

Für so simple Dinge fällt mir adhoc und ohne richtiges Beispiel dazu leider nix ein, wo sich die Erstellung eines Makros auszahlen würde...
Ergänzung ()

Also da fällt mir echt nix ein, wo ein aufgezeichnetes Makro Sinn machen würde. Wirklich gar nichts...
Du könntest so Sachen wie Formatierung abhängig von bestimmten Zellwerten machen, aber da ist die bedingte Formatierung wesentlich besser dafür geeignet. Sorry, aber anhand von dem Beispiel kann ich dir nicht helfen.
 
Zuletzt bearbeitet:
Dann waren Sie nicht TAB-getrennt, zumal ich noch nen Dateidialog mit integrieren musste...

Es ging um den Import von Textfiles in Excel (Das Programm konnte in kein anderes Format exportieren), um sie da dann weiterbearbeiten zu können...
 
Hm, ich bin so langsam auch ein wenig verzweifelt :(

In Word gibt es doch auch nen Makrorekorder oder? Gäbe es dafür vielleicht Beispiele, die einfacher nachzuvollziehen sind und auch für den "einfachen User" hilfreich sind?
 
Also Makros, die nur mit dem Makrorekorder aufgezeichnet werden, sind von der Tendenz her etwas simpler als solche, die Feintuning im Code erfahren haben. Aber um einfach mal zu zeigen, was man mit den Makros machen kann, könntest du ja z.B. einen Aufnehmen, der jede zweite Zeile grau oder rot oder sonstwie einfärbt. einfach Makrorekorder starten, die Zeilen auswählen, formatieren und Makro speichern. Den Makro kann man in jeder Excel-Tabelle verwenden und spart dann schon Zeit ggü. einem händischen Auswählen jedesmal. Das ganze reicht ja, wenn es bis Zeile 50 oder so geht.

ein bisschen ausgefeilter geht das natürlich auch, dann aber nicht mehr nur mit Aufzeichnen.
Ich war so frei und habe hier und hier mal ein bisschen geklaut. Kann an für sich ganz nützlich sein:
Code:
    Sub Faerben()
    Dim ActSheet As Worksheet
    Dim SelRange As Range
    Set ActSheet = ActiveSheet
    Set SelRange = Selection
     
    Application.ScreenUpdating = False
    Dim Zeile, ZeilenNr As Integer
    For Each Zeile In Selection.Rows
    ZeilenNr = ZeilenNr + 1
    If ZeilenNr Mod 2 = 0 Then
    Zeile.Interior.ColorIndex = 15
    Else
    Zeile.Interior.ColorIndex = xlNone
    End If
    Next
    Application.ScreenUpdating = True
     
    ActSheet.Select
    SelRange.Select
    End Sub
 
Zuletzt bearbeitet:
So etwas in der Art mit jede 2. Zeile farbig einfärben ist eigentlich nicht schlecht, aber ich kenne mich halt nicht mit VBA aus und muss es ja auch irgendwie erklären ;) Das würde auch den Rahmen von 5 Minuten sprengen denke ich. Aber danke für die Mühe :)

Werde mir jetzt was zu Word raussuchen. Da lässt sich der Makrorekorder besser verwenden habe ich das Gefühl.
Z. B. fürs Erstellen einer Fußzeile mit Namen und Datum.
 
Jo, geht ja auch, einfach irgendwas zeigen, das man auch in vielen Dokumenten brauchen kann, die Zeitersparnis bei einem Aufruf ist vllt. noch nicht so hoch, aber das läppert sich, wenn man den Makro 100 oder 200 mal verwendet.
 
T3mp3sT1187 schrieb:
Dann waren Sie nicht TAB-getrennt, zumal ich noch nen Dateidialog mit integrieren musste...

Es ging um den Import von Textfiles in Excel (Das Programm konnte in kein anderes Format exportieren), um sie da dann weiterbearbeiten zu können...

Naja, irgendwie müssen die einzelnen Werte ja getrennt gewesen sein. Sofern das Trennzeichen (z.B. ein Leerzeichen zwischen den Werten) nur als Abtrennung vorkommt, wäre das ganze mit "Suchen & Ersetzen" zu lösen gewesen. Wenn die Leerzeichen aber auch innerhalb der Werte vorkommen können, wüsste ich trotzdem nicht, wie ein Makro bei der Sache helfen würde.
Würde mich aber wirklich interessieren, was dein Makro in dem Fall genau gemacht hat.
Ergänzung ()

zomfg schrieb:
So etwas in der Art mit jede 2. Zeile farbig einfärben ist eigentlich nicht schlecht, aber ich kenne mich halt nicht mit VBA aus und muss es ja auch irgendwie erklären ;) Das würde auch den Rahmen von 5 Minuten sprengen denke ich. Aber danke für die Mühe :)

Werde mir jetzt was zu Word raussuchen. Da lässt sich der Makrorekorder besser verwenden habe ich das Gefühl.
Z. B. fürs Erstellen einer Fußzeile mit Namen und Datum.

Dazu will ich folgendes zu bedenken geben: Wenn du jede zweite Zelle rot färben willst und das ganze einmal in einem Dokument gemacht hast, kannst du einfach das Format kopieren. Dafür extra ein Makro zu erstellen, zeugt nicht wirklich von großem Verständnis für die Grundfunktionen von Excel.
Ein Makro, das erkennt wieviele Zeilen das Dokument hat und quasi unabhängig von der Größe des Bereichs jede zweite Zeile rot färbt, ist nicht mit einer simplen Makroaufnahme machbar. Dafür brauchts dann schon wieder rudimentäre VBA-Skills.

Edit: War die Aufgabenstellung nicht "Makros in Excel"? Ist natürlich deine Sache, klingt aber ein wenig nach Themenverfehlung, wenn du jetzt "Makros in Word" behandelst. Außerdem gilt für das Beispiel Ähnliches, wie für "jede 2te Zeile färben": Wenn du die Kopf-/Fußzeile so oft brauchst, solltest du eine Dokumentenvorlage mit der Kopf-/Fußzeile erstellen. Dafür gibts die Funktion ja. Für den Zweck extra ein Makro zu machen, zeigt nur, dass du die restlichen Funktionen nicht so gut kennst, wie du eventuell solltest. Ein gutes Beispiel für den Einsatz von Makros ist es jedenfalls nicht.
Würde dir noch immer mein erstes Beispiel empfehlen. Ist anschaulich und praktisch anwendbar, wenn man Tabellen manuell formatieren muss.
 
Zuletzt bearbeitet:
Naja, das Thema über das ich die Präsentation erstellen soll ist nicht direkt über Makros in Excel. Hatte nur gedacht, dass es da eventuell mehrere Möglichkeiten gibt und gar nicht weiter bedacht, dass man den bei Word ja auch nutzen kann. Deswegen habe ich das Thema so erstellt.
Welches erste Beispiel meinst du? Das mit dem rot/fett und grün/kursiv formatieren in Excel?

Das Beispiel mit der Fußzeile war nur, um meinen Mitschülern zu veranschaulichen, wie sowas funktioniert.
 
Zuletzt bearbeitet:
Zurück
Oben