Benutzer-Werkzeuge

Webseiten-Werkzeuge


office:excel

Excel

Excel-Hilfe im Internet

Alternativen zu Excel

Neue Funktionen

RegEx-Funktionen (2024)

  • drei RegEx-Funktionen:
    • RegexTest: prüft, ob ein Text mit dem Regex-Muster übereinstimmt oder nicht (True oder False)
    • RegexExtract: Gibt das Textstück zurück, das mit dem Regex-Muster übereinstimmt
    • RegexReplace: sucht nach dem Regex-Muster und ersetzt den gefundenen Text

Filter-Funktion (2022)

Syntax: =Filter(array;include;(if_empty))

  • „array“ ist der Bereich, der die Werte enthält, die gefiltert werden sollen
  • „include“ is ein logischer Test, der True oder False zurückgibt, und zewar in derselben Höhe und Breite wie „Array“
  • „if_empty“ ist ein optionaler Wert, der zurückgegeben wird, wenn der Filter keine Datensätze ergibt
  • siehe auch unten: Dynamic Arrays

Dynamic Arrays (2020)

  • anstatt eine Formel mit Bezug zu einer bestimmten Zelle zu kopieren und nach unten aufzufüllen, kann einfach sofort der gesamte Bereich die Formel aufgenommen werden, also
    • nicht mehr (in Zelle B1 eingegeben): =A1, sondern gleich =A1:A5; Ergebnis: die Zellen von B1 bis B5 werden automatisch entsprechend der Formel gefüllt
  • damit wird ein sogenannter Überlauf (engl. „Spill“) erzeugt
  • Kalkulationen mit solchen Überläufen oder Arrays erfolgen dann, indem beim Bezug auf einen Spill einfach der Hashtag # drangehangen wird, also z. B.
    • (in Zelle C1 eingegeben): =B1#; Ergebnis: die Zellen von C1 bis C5 werden automatisch entsprechend der Formel gefüllt
  • besonders interessant sind die Filter-Funktionen im Zusammenhang mit Dynamic Arrays!
  • siehe auch vorstehenden Punkt: Filter-Funktionen

Mehr Information: „Dynamic Arrays“ auf Site https://www.excelyourself.com.au

Diagramme

x- und y-Achse vertauschen

  • in fertigem Diagramm mit rechter Maustaste Datendarstellung anklicken, dann im Kontextmenü „Daten auswählen“ wählen, dann Befehl „Zeile/Spalte wechseln

zwei y-Achsen mit unterschiedlicher Skalierung

  1. Alles markieren und dann den Befehl Menüband <Einfügen - Gruppe Diagramm rechts unten den kleinen Pfeil wählen>; dann zum Reiter „Alle Diagramme“ gehen
  2. In der angebotenen Liste „Verbunddiagramm“ wählen.
  3. Am besten eine y-Reihe als Säule, die andere als Linie wählen (sonst sind manche Daten nicht zu sehen); außerdem anklicken, dass eine „sekundäre Achse“ entsteht.
  4. OK

Zeilen und Spalten vertauschen in Tabelle

  • komplette Tabelle kopieren
  • Menü <Start - Einfügen - Inhalte einfügen - Transponieren>

Bedingte Formatierung

Es gibt im Grunde 3 Fälle: der Bedingungswert steht

  1. direkt in der Zelle oder im markierten Bereich, auf den die Formatierung angewendet werden soll
  2. in einer Formel, die allgemeine Funktionen (wie Wochentag usw.) auf die Zelle oder den markierten Bereich anwendet
  3. in einer Formel, die Bezug auf eine andere Zelle oder einen anderen Zellbereich nimmt.
  • Zu 1: Man markiert einfach die Zelle oder den Zellbereich und wählt unter den Bedingungen die passende aus und weist eine Formatierung zu.
  • Zu 2: In der Formel wird die Bedingung für die erste Zelle des markierten Bereichs definiert. Trotzdem wirkt die Bedingung auf den gesamten Bereich.
    • Beispiel 1: Soll in einer Liste von Datumsangaben, die in der Spalte A steht (z.B. von A1 bis A30), z.B. der Sonntag (7. Wochentag) hervorgehoben werden, so wird die Liste markiert und dann bei der bedingten Formatierung als Formel eingegeben: „= Wochentag(A1) = 7“ (ohne die Anführungszeichen eingeben). Als Formatierung könnte man z.B. eine hellrote Zellschattierung wählen. Wie man sieht,
      • steht tatsächlich nur A1 in der Formel (obwohl der gesamte Bereich A1:A30 betroffen ist)
      • werden 2 Gleichhheitszeichen eingesetzt. 2 Gleichheitszeichen werden immer benötigt, wenn mit einem festen Wert oder einer Zelle/einem Zellbereich verglichen wird.
    • Beispiel 2: Sollen die beiden Vergleichsstellen nicht unbedingt identisch sein, sondern soll nur geprüft werden, ob der Inhalt der Vergleichszelle im Inhalt einer der Zellen des markierten Bereichs enthalten ist, so muss die Finden-Funktion eingesetzt werden. Sei z.B. A1:B30 der markierte Bereich und C1 die Vergleichszelle, so lautet die Bedingung: =Finden($C$1;A1). Besonderheiten hierbei:
      • es wird nur mit einem Gleichheitszeichen gearbeitet, da die Vergleichszelle Teil der Funktion ist.
      • der markierte Bereich besteht nicht nur aus einer Spalte, sondern aus einer „Fläche“. Der Bereich kann im Prinzip beliebeig groß sein. Trotzdem reicht es, die erste Zelle (A1) in der Formel anzugeben.
  • Zu 3: Auch hier gilt, dass die Bedingung für die erste Zelle des markierten Bereichs definiert wird.
    • Unterfall 1: Bezug auf eine bestimmte Zelle. Beispielsweise enthalte der Bereich A1:A30 verschiedene Zahlen und es soll Bezug auf die Zelle C5 genommen werden, in der eine bestimmte Zahl steht, mit dem Ziel, dass im Bereich A1:A30 alle mit C5 übereinstimmenden Zahlen hervorgehoben werden. Zunächst wird der Bereich A1:A30 markiert, dann die bedingte Formatierung aufgerufen und bei „Regeln zum Hervorheben von Zellen“ unter „weitere Regeln“ der Befehl „Formel zur Ermittlung …“ angeklickt. Dann kann im Formelfeld die Bedingung eingegeben werden: =$A1=$C$5. Wichtig sind die Dollarzeichen, die für einen absoluten (keinen relativen) Bezug sorgen: Spalte A absolut, Zelle C5 absolut.
    • Unterfall 2: Bezug auf einen Zellbereich. Beispielsweise könnte eine Liste mit Text im Bereich A1:A50 durchgegangen werden; immer dann, wenn in einer Zeile in der Spalte B ein „x“ eingeben wird, soll der Text in Spalte A (aber nur in der jeweils aktuellen Zeile) grün markiert werden. Nach dem Markieren des Bereichs A1:A50 wird die Bedingungsformel eingegeben: =$B1=„x“. Im Unterschied zu Unterfall 1 kommt der markierte Bereich selbst in der Formel nicht vor, dafür wird der Inhalt eines anderen Zellbereichs mit einem vorgegeben Wert (nämlich „x“) verglichen. Obwohl nur die erste Zelle des Bereichs ($B1) in der Formel vorkommt, gilt die Formel für jede Zelle des angesprochenen Bereichs. Erreicht wird das dadurch, dass das Dollarzeichen nur vor der Spaltenkoordinate steht, nicht aber vor der Zeilenkoordinate. Die Zeilen werden also von oben bis unten durchlaufen. Entsprechend könnte man in einer anderen Formel die Zeile festsetzen und die Spalten „freigeben“, z.B. mit B$1.
    • Unterfall 3: wie Unterfall 2, aber es wird nicht mit einem vorgegebenen Wert verglichen, sondern mit dem Wert einer bestimmten Zelle. Wenn dies z.B. die Zelle D7 ist, so lautet die Bedingungsformel =$B1=$D$7. Hier wird also die jeweils aktuelle Zeile der Spalte B mit dem Wert in Zelle D7 verglichen. Bei Übereinstimmung wird die Formatierung auf den Bereich A1:A50 angewendet. Wenn keine Identität untersucht werden soll, sondern wenn es darum geht, ob der Inhalt der D7 in einer anderen Zelle enthalten ist, muss mit der Textfunktion „Finden“ gearbeitet werden: =Finden($D$7;$B1)>0.

Man kann für eine Zelle oder einen Zellbereich beliebig viele Bedingungen gleichzeitig definieren. Sie werden in der Reihenfolge, wie sie definiert wurden, von Excel verwaltet und zur Formatierung angewendet.

Um die definierten Regeln zu sehen und ggf. zu bearbeiten, Menüband <Bedingte Formatierung - Regeln verwalten> aufrufen. Es geht ein Fenster auf, in dem die Regeln editiert werden können und die Reihenfolge geändert werden kann. Hier lässt sich z.B. auch der Bereich ändern, der formatiert werden soll: einfach bei „Wird angewendet auf“ die Werte ändern. Soll eine Regel nicht verwendet werden (aber trotzdem erhalten bleiben), so kann sie druch Setzen eines Häkchens „angehalten“ werden.

Falls die Regeln nicht zu sehen sind, muss evtl. „Formatierungsregeln anzeigen für“ auf „Dieses Arbeitsblatt“ eingestellt werden.

Einblenden und Ausblenden von Arbeitsblättern

  • <Ansicht - Fenster - Einblenden/Ausblenden>

Auf diese Weise kann z.B. auch das „Persönliche Arbeitsblatt“ zum Vorschein geholt werden, in dem man aufgezeichnete Makros abgelegt hat.

Umwandeln eines Bereichs in eine Tabelle

  1. am besten in linke obere Zelle des Bereichs klicken
  2. Menü [Einfügen - Tabellen - Tabelle]

Umwandeln einer Tabelle in einen Bereich

  1. in Tabelle klicken (irgendwo)
  2. Menü [Tabellenentwurf - In Bereich konvertieren]

Textfunktionen in Excel

FunktionErläuterung
ASCÄndert lateinische Buchstaben mit voller Breite (Double-Byte) oder Katakana in einer Zeichenfolge in Zeichen mit halber Breite (Single-Byte)
BAHTTEXTWandelt eine Zahl in einen Text um und verwendet dabei das Währungsformat ß (Baht)
CODEGibt die Codezahl des ersten Zeichens in einer Textzeichenfolge zurück
DMWandelt eine Zahl in Text um, wobei das Währungsformat DM verwendet wird
ERSETZENErsetzt Zeichen in einem Text ab einer angegebenen Position; die Position kann mit der Finden- oder der Suchen-Funktion ermittelt werden
FESTFormatiert eine Zahl als Text, wobei eine feste Anzahl von Dezimalstellen verwendet wird
FINDENSucht eine Textzeichenfolge in einem anderen Text (mit Unterscheidung von Groß-/Kleinschreibung) und gibt die Position des ersten Zeichens der Zeichenfolge zurück; wichtig als Vorbereitung für die Ersetzen-Funktion; kann auch dazu dienen, Muster zu finden: Muster vorhanden, wenn die Finden-Funktion einen Wert > 0 liefert; falls Muster nicht vorhanden, wird die Fehlermeldung !Wert) ausgegeben; die Finden-Funktion kann also dazu dienen, herauszufinden, ob eine Zeichenfolge in einer Zelle enthalten ist oder nicht.
GLÄTTENEntfernt Leerzeichen aus Text, aber nur die, die am Anfang oder Ende stehen; die Leerzeichen zwischen Wörtern bleiben erhalten
GROSSWandelt Text in Großbuchstaben um
GROSS2Wandelt jeden ersten Buchstaben in jedem Wort eines Textwertes in Großbuchstaben um
IDENTISCHPrüft, ob zwei Textwerte identisch sind
JISÄndert lateinische Buchstaben mit halber Breite (Single-Byte) oder Katakana in einer Zeichenfolge in Zeichen mit voller Breite (Double-Byte)
KLEINWandelt Text in Kleinbuchstaben um
LÄNGEGibt die Anzahl von Zeichen in einer Zeichenfolge zurück
LINKSGibt das linke Zeichen eines Textwertes zurück
PHONETICExtrahiert die phonetischen (Furigana) Zeichen aus einer Textzeichenfolge
RECHTSGibt die rechten Zeichen eines Textwertes zurück
SÄUBERNLöscht alle nicht druckbaren Zeichen aus einem Text
SUCHENSucht einen Textzeichenfolge in einem anderen Text (ohne Unterscheidung von Groß-/Kleinschreibung) und gibt die Position des ersten Zeichens der Zeichenfolge zurück; wichtig als Vorbereitung für die Ersetzen-Funktion; kann auch dazu dienen, Muster zu finden (Muster nicht vorhanden, wenn Fehlermeldung !Wert)
TWandelt die Argumente in Text um
TEILLiefert eine bestimmte Anzahl Zeichen einer Zeichenfolge ab der von Ihnen bestimmten Stelle
TEXTFormatiert eine Zahl und wandelt sie in Text um
VERKETTENVerknüpft mehrere Textelemente zu einem Textelement; kann anstelle des Verkettungszeichens & verwendet werden
WECHSELNErsetzt in einer Textzeichenfolge alten Text durch neuen Text, ohne dass die Position des Textes angegeben werden muss
WERTWandelt ein Textargument in eine Zahl um
WIEDERHOLENWiederholt einen Text so oft wie angegeben
ZEICHENGibt das durch die Codezahl angegebene Zeichen zurück

Verweisfunktionen/Lookup-Funktionen/Hole-Funktionen

Mit den Verweisfunktionen lassen sich auf flexible und einfache Weise Daten aus anderen Bereichen derselben Tabelle oder aus anderen Tabellen „holen“.

Man kann Verweisfunktionen als eine bestimmte Art von Suche auffassen.

Benötigt werden v.a. zwei Zellen:

  • eine Zelle für die Verweis-Formel; hier wird also das Ergebnis produziert; und
  • eine Zelle für den Suchbegriff, der hier entweder einfach eingetippt oder per Formel erzeugt wird.

Darüber hinaus wird eine Bereichsangabe benötigt, denn Excel muss wissen, wo es suchen soll. Der Suchbereich muss auf eine bestimmte Weise aufgebaut sein, sonst funktionieren die Verweisfunktionen nicht. Das wichtigste Kriterium für den Suchbereich:

  • innerhalb des Bereichs muss es eine Spalte oder Zeile geben, in der die Werte sowohl
    • eindeutig als auch
    • alphabetisch/numerisch sortiert vorliegen.
    • mit anderen Worten: es muss eine Eindeutigkeits/Sortiert-Spalte/Zeile geben!

Das heißt umgekehrt:

  • Auf Tabellen ohne Eindeutigkeits/Sortiert-Spalte/Zeile lassen sich die Verweis-Funktionen nicht anwenden!
  • Nur solche Suchbegriffe führen zum gewünschten Erfolg, die in der Eindeutigkeits/Sortiert-Spalte/Zeile des Suchbereichs enthalten sind.

Sind alle Kriterien erfüllt, kann man den Suchbegriff in die entsprechende Zelle eingeben mit dem Effekt, dass Excel in der Eindeutigkeits/Sortiert-Spalte/Zeile des Suchbereichs danach sucht und bei Erfolg einen Wert liefert. Welchen Wert? Das hängt davon ab, was man in der Verweisfunktion mit einem weiteren Parameter, dem sog. Spalten- oder Zeilenindex, fordert:

Beim Spalten- oder Zeilenindex handelt es sich einfach um eine Zahl.

Spalten/Zeilen-Index 1 bedeutet z. B., dass Excel den Suchbegriff in der Eindeutigkeits/Sortiert-Spalte/Zeile des Suchbereichs sucht und - falls gefunden - einfach wieder zurückgibt. Das wäre nur eine Bestätigung dafür, dass der Begriff in der Eindeutigkeits/Sortiert-Spalte/Zeile des Suchbereichs enthalten ist. Trotzdem kann auch eine solche Suche schon sinnvoll sein, nämlich dann, wenn eine sehr große Tabelle vorliegt und man, ohne den aktuellen Arbeitsblattbereich verlassen zu müssen, prüfen kann, ob der Begriff in der Tabelle vorkommt.

Meist wird es aber um ein anderes Ansinnen gehen, nämlich einen Wert zu holen, der innerhalb des Suchbereichs

  • zwar in derselben Zeile wie der Suchbegriff steht, sich aber einer anderen Spalte befindet oder der
  • zwar in derselben Spalte wie der Suchbegriff steht, sich aber einer anderen Zeile befindet.

„Andere“ Spalte/Zeile heißt nichts anderes, als dass der Spalten- oder Zeilenindex eine andere Nummer als 1 haben muss, also z. B. 3.

Ein typisches Beispiel ist die Eingabe einer Kundennummer in die Suchzelle, und in der Zelle daneben wird per Verweisfunktion z. B. der Nachname des Kunden geholt. Geholt wird er von einem zweiten Arbeitsblatt, das alle Kundendaten enthält, wobei in der ersten Spalte des Blattes die Kundennummern stehen (und zwar numerisch sortiert), in der 3. Spalte die Nachnamen. Das heißt, ohne das Arbeitsblatt wechseln zu müssen, kann ich den korrekten Nachnamen anzeigen lassen. Sobald in die Suchzelle eine andere (vorhandene) Nummer eingetippt wird, erscheint daneben der zugehörige andere Nachname.

WVerweis und SVerweis

Die beiden wichtigsten Verweisfunktionen sind WVerweis und SVerweis (englisch HLookup und VLookup).

  • Wverweis: Hier muss der Suchbereich so strukturiert sein, das eine Eindeutigkeits/Sortiert-Zeile vorhanden ist; diese Zeile muss außerdem die erste Zeile des Suchbereichs sein.
  • SVerweis: Hier muss der Suchbereich so strukturiert sein, das eine Eindeutigkeits/Sortiert-Spalte vorhanden ist; diese Spalte muss außerdem die erste Spalte des Suchbereichs sein.

Syntax der beiden Verweisfunktionen:

= WVerweis(<Suchbegriff>;<Suchbereich>;Zeilenindex>)

= SVerweis(<Suchbegriff>;<Suchbereich>;Spaltenindex>)

Hinweis: In den meisten Excel-Anleitungen wird von „Suchkriterium“ anstatt von „Suchbegriff gesprochen.

Die Tatsache, dass die Eindeutigkeits/Sortiert-Spalte/Zeile immer die erste Spalte/Zeile sein muss, bedeutet, das der Spalten/Zeilen-Index nicht 0 oder < 0 sein kann!

Wenn man möchte, kann man das Ergebnis noch „verschönern“, indem man als vierten Parameter „falsch“ oder „wahr“ eintippt. Lässt man diese Eingabe weg, nimmt Excel als Default-Wert „wahr“. „Falsch“ führt dazu, nur im Falle einer exakten Übereinstimmung des Suchbegriffs mit einem Wert in der Eindeutigkeits/Sortiert-Spalte/Zeile des Suchbereichs überhaupt etwas Sinnvolles angezeigt wird; bei fehlender Übereinstimmung wird eine Fehlermeldung der Art „Wert!“, „NV“ oder Ähnliches angezeigt wird (vgl. unten Fehlermeldungen und Fehlertypen). Bei Eingabe von „wahr“ (oder gar keiner Eingabe) wird bei Nichtübereinstimmung irgendein Wert aus dem Suchbereich geholt, was aber nur in bstimmen Situationen etwas bringen dürfte. Das heißt, klare Ergebnisse erhält man nur bei Eingabe von „falsch“. Die komplette Syntax z. b. der SVerweis-Funktion wäre also:

= SVerweis(<Suchbegriff>;<Suchbereich>;<Spaltenindex>;falsch)

Weitere Verweisfunktionen

Was ist, wenn aus irgendeinem Grund die Eindeutigkeits/Sortiert-Spalte/Zeile nicht die erste Spalte/Zeile des Suchbereichs ist und man die Anordnung nicht ohne Weiteres verändern kann?

Dann lassen sich SVerweis und WVerweis nicht anwenden!

Um trotzdem Werte aus dem Suchbereich holen zu können, bietet die Excel eine Funktion an, die einfach nur Verweis heißt. Darin muss der Nutzer selbst angeben, ob waagerecht oder senkrecht gesucht werden soll; darüber hinaus sind beliebige Spaltenindizes möglich.

Die Syntax des Verweis-Feldes lautet:

=Verweis(<Suchbegriff>,<Suchvektor>,<Ergebnisvektor>)
  • „Suchbegriff“ ist wieder klar.
  • Suchvektor bedeutet, dass ich im Suchbereich diejenige Spalte oder Zeile auswählen muss (z.B. Bereichsangabe C:C, wenn es sich um die komplette Spalte C als Suchspalte handelt), in der gesucht werden soll. Dies ist dann meine Eindeutigkeits/Sortiert-Spalte.
  • Ergebnisvektor heißt, dass ich eine weitere Spalte oder Zeile auswählen muss, aus der letztlich der Wert geholt wird, der angezeigt werden soll. Es ist klar, dass es sich um eine Spalte handeln muss, wenn der Suchvektor ebenfalls eine Spalte ist; Entsprechendes gilt für Zeilen.

Wenn Excel nun im Suchvektor den Suchbegriff findet, sind damit die Koordinaten der Findezelle bekannt. Handelt es sich um einen Spaltenvektor, geht Excel mit der Zeilenkoordinate der Findezelle hinüber zum Ergebnisvektor und holt dort den Wert, der angezeigt werden soll; handelt es sich dagegen um einen Zeilenvektor, nimmt Excel die Spaltenkoordinate und geht hinauf oder hinunter zum Ergebnisvektor und holt dort den Anzeigewert.

Da der Ergebnisvektor an beliebiger Stelle innerhalb des Gesamtsuchbereichs liegen kann, ist in diesem Sinne der Spaltenindex ebenfalls beliebig. Eine konkrete Angabe des Spaltenindex kann damit aber entfallen.

Der Gesamtsuchbereich bietet mehrere Möglichkeiten, Ergebnisvektoren festzulegen. Sie müssen lediglich immer parallel zu den Suchvektoren sein. Wegen der Vielzahl der möglichen Ergebnisvektoren hat man es also mit einer Ergebnismatrix zu tun.

Weil dem so ist, bietet Excel noch eine zweite, allgemeinere Möglichkeit für die Verweisfunktion an: Man lässt einfach die separate Angabe von Such- und Ergebnisvektor weg und gibt nur die Matrix an! Die Syntax wäre:

=Verweis(<Suchbegriff>,<Matrix>)

Dann weiß Excel natürlich nicht mehr genau, was es tun soll, aber es scheint Situationen zu geben, in denen diese Unschärfe zum Produzieren sinnvoller Ergebnisse ausreicht. Es scheint so zu sein, dass sich Excel am Aufbau der Matrix orientiert: Gibt es mehr Zeilen als Spalten, wendet Excel einen Suchvektor in waagerechter Richtung an und umgekehrt. Als Ergebnisvektor wird immer die letzte Zeile oder Spalte der Matrix genommen.

Vergleich und Index

Neben der Funktion „Verweis“ sind noch die Funktionen „Vergleich“ und „Index“ erwähnenswert.

Die Vergleichsfunktion liefert nicht direkt einen Wert, der in einem Suchbereich enthalten sind, sondern dessen Koordinaten oder nur einfach eine Zahl (z. B. eine Zahl für die Spalte oder Zeile). Wichtig kann das z. B. sein, wenn man einen Spalten- oder Zeilenindex für die SVerweis- bzw. WVerweis-Funktion automatisch ermitteln lassen möchte.

Die Indexfunktion erwartet als Parameter neben dem Suchbegriff die Koordinaten des Wertes, der geholt werden soll. Die Koordinaten selbst können mit der Verweisfunktion bestimmt werden.

Excel-VBA

Sub verdoppeln_eintrag()
'
' verdoppeln_eintrag Makro
'
'
  ActiveCell.Rows("1:1").EntireRow.Select
  Selection.Insert Shift:=xlDown
  ActiveCell.Offset(1, 0).Range("A1").Select
  Range(Selection, Selection.End(xlToRight)).Select
  Selection.Copy
  ActiveCell.Offset(-1, 0).Range("A1").Select
  ActiveSheet.Paste
  Application.CutCopyMode = False
End Sub
Sub swap()
'
' swap Makro
'
Dim ht As String
Dim ut As String
ht = ActiveCell.Value
ut = ActiveCell.Offset(0, 1).Value
ActiveCell.Value = ut
ActiveCell.Offset(0, 1).Value = ht
End Sub

Excel zur Indexerstellung

siehe Indexing. Dort geht es auch um die Konvertierung von alten Registern, die als Word- oder PDF-Dateien vorliegen.

Einige Aspekte (wie der Datenaustausch) werden bei den Programmen QuIndex und Cindex beschrieben.

Fehlermeldungen und Fehlertypen

Die in Excel relevanten Datentypen sind

  • Zahl
  • Text (String)
  • boolscher Wert (WAHR/FALSCH) und
  • Fehlerwert

Die Funktion T wandelt ein Argument in einen Text um. Zahlen werden in leere Zeichenfolgen umgewandelt. Die Funktionen N und WERT wandeln ein Argument in eine Zahl um. Für alphanumerische Zeichen liefert WERT einen Fehlerwert. N macht stattdessen eine 0 draus.

Die Funktionen TYP und FEHLER.TYP geben eine Ganzzahl zurück, die angibt, um welchen Datentyp bzw. Fehlertyp es sich bei dem Argument handelt. Der Fehler #WERT! hat z.B. den Fehlertyp 3.

FehlermeldungFehlertyp-Nummer
#NULL!1
#DIV/0!2
#WERT!3
#BEZUG!4
#NAME?5
#ZAHL!6
#NV7
Sonstiges#NV

Eine ähnliche Aufgabe erfüllen die Funktionen ISTFEHL, ISTBEZUG, ISTFEHLER, ISTKTEXT, ISTLEER, ISTLOG, ISTNV, ISTTEXT und ISTZAHL. Das Ergebnis dieser Funktionen ist aber keine Ganzzahl, sondern ein boolescher Wert: WAHR oder FALSCH.

Suchen/Ersetzen

  • Problem: In Word sind in den Tabellenzellen mehrere Absätze vorhanden. Kopiert man eine eine solche Tabelle nach Excel, wird für jeden Absatz eine neue Zeile erzeugt. Man hätte aber gerne wie in Word Zeilenumbrüche in den Zellen. Lösung: in Word alle <CR> durch Sonderzeichen ersetzen, z.B. #, dann nach dem Einfügen in Excel folgendes Makro laufen lassen:
Sub Zeilenumbrueche()
  Cells.Replace What:="#", Replacement:=Chr$(13), _
  LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
End Sub

Arbeitsblätter derselben Datei parallel anschauen

Menü [Ansicht - Neues Fenster]

Damit wird das aktuelle Arbeitsblatt dupliziert, woraufhin der Name des Fensters am Ende eine „2“ erhält; es kann wie jedes andere Fenster auf dem Bildschirm an geordnet werden. Gut ist, dass „Nebeneinander anzeigen“ direkt als Funktion gewählt werden kann - das macht das Erreichen dieser Anordnung einfacher.

Es lassen Duplikate mehrerer Arbeitsblätter erzeugen (die Nummern im Fensternamen werden hochgezählt) und parallel anschauen.

Pivot-Tabellen

Zweck von Pivot-Tabellen („Kreuztabellen“) ist es, Daten schnell gruppieren und umgruppieren zu können.

Erzeugen einer Pivot-Tabelle

  • Ausgangspunkt sei eine vorhandene Arbeitstabelle.
  • Man klickt in irgendeine Zelle der Tabelle und ruft Menu <Einfügen - Pivot-Tabelle> auf.
  • Ist die Ausgangstabelle als Liste formatiert, erscheint ihr Name im Fenster „PivotTabelle erstellen“:

Bild 1
Bild 1

  • Wäre die Ausgangstabelle keine Liste, müsste der Tabellenbereich in Form einer üblichen Bereichsangabe (z.B. A1:E20) eingetragen werden.
  • Wichtig ist, bei Platzierung „Neues Arbeitsblatt“ zu wählen, damit die Pivot-Tabelle, die über ganz eigene Funktionen verfügt, nicht mit anderen Bereichen des Arbeitsblatts in Konflikt gerät; außerdem ist die Übersichtlichkeit so viel besser, als wenn sich die Pivot-Tabelle auf demselben Arbeitsblatt wie die Ausgangstabelle befinden würde.
  • Als nächstes erscheint entweder das „klassische“ Fenster mit Bereichen für Zeilen, Spalten- und Wertfelder (Bild 2 a) oder das moderne Fenster, indem man aufgefordert wird, Felder auszuwählen (Bild 2 b). In beiden Fällen wird rechts der Pivot-Aufgabenbereich angezeigt.

Bild 2 a
Bild 2 a
Bild 2 b
Bild 2 b

  • Im Pivot-Aufgabenbereich können die Felder durch anklicken ausgewählt werden. Standardmäßig landet ein angeklicktes Feld im Zeilenbereich. Von hier kann es bei Bedarf in die anderen Bereiche verschoben werden. Bei der Einstellung „klassisch“ werden die Felder im Zeilenbereich nebeneinander, also spaltenweise angeordnet (Bild 3 a); bei der Einstellung „modern“ stehen sie mit hierarchischer Einrückung untereinander in der ersten Spalte der Pivot-Tabelle (Bild 3 b).

Bild 3 a
Bild 3 a
Bild 3 b
Bild 3 b

Um von der modernen zur klassischen Anordnung zu kommen, muss eine Einstellung in den Pivot-Tabellen-Optionen vorgenommen werden, und zwar muss das entsprechende Häkchen gesetzt werden:

Bild 4
Bild 4

Nach OK werden die Daten nebeneinander angeordnet. Der umgekehrte Weg schient nicht so einfach möglich zu sein. Aber man kann auf der Basis derselben Ausgangsdaten einfach eine neue Pivot-Tabelle erstellen.

Pivot-Tabellen bei der Indexerstellung

Für die Indexerstellung ist die klassische Anordnung wichtig, weil dann die Daten kopiert und in Word eingefügt werden können. Das Gute an der Pivot-Darstellung ist, dass hier die Gruppierung automatisch geschieht. Das heißt, man braucht keine Formeln! In Word sind nach dem Einfügen nur noch einige Suchen/Ersetzen-Läufe nötig und schon ist das Register fertig.

Näheres: siehe Indexing-Wiki unter Indexing mit Pivot-Tabellen

Sortiermakros

Zeichnet man eine Sortierung in einem Makro auf, erscheinen im VBA-Code die aktuellen Koordinaten des Sortierbereichs, d.h., das Makro sortiert immer nur diesen Bereich. Wird die Tabelle erweitert, gehören die neuen Zeilen nicht zum Sortierbreich des Makros. Um den Makro-Sortierbereich flexibel zu halten, braucht nur ein Bereichsname vergeben zu werden (Menü <Formeln - Namen verwalten>). Danach steht im VBA-Code der Bereichsname, und das Makro markiert stets automatisch den gesamten Bereich zum Sortieren, obwohl bei der Ur-Aufzeichnung nur wenige Zeilen vorhanden waren.

Makro-Code schützen

  • in VBA-Editor wechseln
  • Menü <Extras - Eigenschaften von VBA-Projekt>, dann Reiter „Schutz“; hier Passwort eingeben und OK.

Tipps und Tricks

  • Wenn Zahlenzelle Textformat hat, wie kann dann das Zahlenformat zugewiesen werden? Einfach Format–Zelle–Zahl funktioniert meistens nicht. Besser und garantiert erfolgreich: in eine leere Zelle (z.B. in A1) die Zahl 1 eintippen; nun diese Zelle mitsamt ihrem Inhalt kopieren und dann in die zu formatierende Zelle einfügen, aber mit „Inhalte einfügen“ und außerdem beachten, dass mit dem Einfügenbefehl eine Berechnung vorgenommen werden kann: also: Inhalte einfügen–Vorgang: multiplizieren–OK.

Symbolleisten und Makros in Excel

  • WG, 16.5.07:
    • Symbolleisten und Makros in Excel: Achtung! Wenn eine benutzerdefinierte Symbolleiste Verknüpfungen zu Makros enthält, so gibt es ein großes Problem: Die Verknüpfungen sind absolut, d.h. sie enthalten Pfad und konkreten Dateinamen. Speichert man eine Excel-Datei, die solche Symbolleisten enthält, unter einem neuen Namen ab, so stimmen die Verknüpfungen nicht mehr! Falls die ursprüngliche Datei zusätzlich geöffnet wird, laufen zwar einige Makros, auf die die Buttons verweisen, wieder, aber eben nur einige!
      • Es laufen alle Makros, bei denen keine „Bewegung“ stattfindet, bei denen also die Cursor-Position bzw. die aktuelle Markierung eines Bereichs nicht verändert wird (z.B. läuft ein Kleinschreiben-Makro ebenso wie ein Suchen-Ersetzen-Makro, da sich beide auf einen fest bleibenden markierten Bereich beziehen). Sobald in einem Makro Bewegung stattfinden soll, hat Excel das Problem, nicht mehr zu wissen, auf welche Datei (man beachte: es sind ja mindestens zwei geöffnet: die Arbeitsdatei und diejenige, die die Makros enthält, auf die die Buttons zielen) es das Makro anwenden soll.
      • Lösen lässt sich dieses Problem einzig und allein dadurch, dass die Verknüpfungen manuell neu angelegt werden, und zwar zur aktuellen Arbeitsdatei. D.h., eine „Muster-Makro-Datei“ kann man zwar verwenden, wenn aber die dort entwickelten Makros in einer anderen Datei zum Einsatz kommen sollen, dann hilft nur eines: Die Makros müssen manuell von der Muster-Datei in die aktuelle Arbeitsdatei hineinkopiert werden und hier müssen die Verknüpfungen von Symbolleisten-Buttons zu den (dann „dateieigenen“) Makros neu hergestellt werden!
      • Abgesehen von immer wieder nötigen manuellen Zuweisen von Makros zu Buttons auf einer Symbolleiste, ist das Arbeiten mit einer Symbolleisten-Musterdatei grundsätzlich sinnvoll (siehe nächsten Punkt).
  • µ, 8.5.07: Excel-VBA-Makros kann man entweder in einer Extra-Datei (*.xls) ansammeln, die von Hand geöffnet werden muss, um dranzukommen, oder aber man steckt sie in die „persönliche Makroarbeitsmappe“ PERSONL.XLS, die steht unter „C:\Dokumente und Einstellungen\Benutzername\Anwendungsdaten\Microsoft\Excel\XLStart“
office/excel.txt · Zuletzt geändert: 2024/09/05 10:01 von walter