Startseite

Outlook | Excel | Word | PowerPoint | Adobe Acrobat CD | Blog

XING | Facebook |


Pia Bork
Training, Support, Coaching für Office und Filesite



 

Tipps und Tricks rund um Word

A B C D E F G H I/J K
L M N O P/Q R S T U-W X-Z

 

  1. Generelle Funktion
    1. Schalter für DATABASE
    2. Accent graves `, Anführungszeichen ' und "
    3. Bedingungen mit WHERE
    4. Sortieren mit ORDER BY
    5. Spalten umbenennen mit AS
    6. Formate für Zahl und Datum
    7. Addieren und andere Berechnungen
    8. Tabellenformate
  2. Schalter für DATABASE
  3. SELECT-Anweisung
  4. Beispiel: Kursleiter, Kurse und Bürotage
  5. Beispiel: Wohnungen und Besitzer
    1. Adresszeilen übernehmen
    2. Zahlen formatieren
  6. Beispiel: Offene Rechnungen pro Kunde
  7. Beispiel: Liste der Kursleiter mit Anzahl
  8. Beispiel: Liste der Reiseteilnehmer in Serienbrief (Blog)
  9. Fehler "Ungültiges Seriendruckfeld"
  10. Fehler: zu wenig Zeichen werden ausgelesen

 

Beispiel: Offene Rechnungen pro Kunde

In einer Excel-Arbeitsmappe liegen zwei Tabellen vor: eine mit den Kundennummern sowie den Adressen, eine zweite mit den Kundennummern und den offenen Rechnungen pro Kunde.

Tabelle "Kunden-Nr": Kundennummern mit Adressen Tabelle "Rechnungen": Kundennummern mit offenen Rechnungen

Mit einem Serienbrief sollen die offenen Rechnungen pro Kunde aufgelistet werden.

Schritt 1 - Serienbrief erstellen:

Erstellen Sie einen Serienbrief und verbinden Sie ihn der Tabelle "Kunden-Nr" der Arbeitsmappe "Offene Rechnungen.xlsx". Fügen Sie die Seriendruckfelder für die Adresse hinzu und speichern Sie den Serienbrief.

Schritt 2 - DATABASE einfügen:

Fügen Sie mit "Einfügen | Schnellbausteine | Felder" das Feld DATABASE hinzu.

Klicken Sie im Dialog "Feld" auf "Datenbank einfügen". Klicken Sie auf "Daten importieren" und suchen Sie die Datei "OffeneRechnungen.xlsx". Markieren Sie die Tabelle "Rechnungen$" und bestätigen Sie mit OK.

 

 

Klicken Sie auf "Abfrageoptionen" und wählen Sie als Feld "Kunden-Nr#", bei Vergleich steht "Gleich" und bei "Vergleichen mit" tragen Sie eine Zahl ein: 1234 oder 9999. ACHTUNG! Sie sollten wirklich eine Zahl, keinen Text verwenden.

Bestätigen Sie mit OK.

 

Wenn Ihre Tabelle formatiert werden soll, müssen Sie jetzt auf "Tabelle AutoFormat" klicken. Die Optionen sind hier beschrieben.

Klicken Sie auf "Daten einfügen" und aktivieren Sie unbedingt die Option "Daten als Feld einfügen"! Wenn Sie das vergessen, bekommen Sie nur eine Tabelle, die sich nicht mehr an die unterschiedlichen Kunden-Nummern anpasst!

Mit OK bestätigen.

 

 

Nach einigen Sekunden wird das Feld eingefügt, aber Sie sehen nichts!

Schritt 3: DATABASE bearbeiten

 

Sie sehen jetzt alle Spalten, die für DATABASE übergeben werden: Kunden-Nr., Datum, Rechnung-Nr, Betrag. Außerdem wird hinter WHERE angezeigt, für welche Kunden-Nummer aktuell die Daten angezeigt werden: bei mir 1234. Da diese Kundennummer bei mir nicht existiert, wird nichts angezeigt.

Sorgen Sie zuerst dafür, dass die offenen Rechnungen nur für die jeweils aktuelle Kunden-Nummer gezeigt wird:

Der Teil hinter "WHERE" muss jetzt so aussehen:

WHERE ((`Kunden-Nr#`= {MERGEFIELD KundenNr}))" \h}

Sie müssen jetzt die Tabelle der offenen Rechnungen für diese Kunden-Nummer sehen. Wechseln Sie zum nächsten Datensatz und aktualisieren Sie die DATABASE-Tabelle immer mit F9. Die offenen Rechnungen müssen jetzt wechseln.

Die Anpassungen der Spalten nehmen Sie wieder vor, indem Sie mit ALT+F9 das DATABASE-Feld anzeigen lassen. Ich brauche die Spalte "Kunden-Nr." nicht. Sie kann entfernt werden. Löschen Sie hinter Select `Kunden-Nr#`, - mitsamt den Accent-Zeichen und dem schließenden Komma.

Schritt 4: Spalten formatieren

Die Spalten Datum und Betrag werden in amerkanischer Schreibweise ausgegeben und müssen noch umformatiert werden. Dazu dient der Schalter "Format".

Das Datum in deutscher Schreibweise:

 

Format(`Datum`, 'dd.mm.yyyy') as Datum

Der Betrag in Euro mit zwei Nachkommastellen:

 

Format (`Betrag`, '#,##0.00 €') as Betrag

Der Spaltenname "Rechnungsnr#" als "Rechnung"

 

`Rechnungsnr#`as Rechnung

Achten Sie darauf, dass die Formatangaben mit einem Hochkomma eingefasst sind. Die Spaltennamen hingegen werden mit einem Accent grave eingefasst. Der Spaltenname muss zwingend mit "as" wiederholt werden. Das Zahlenformat muss zwingend im amerikanischen Format angegeben werden: #,##0.00 - achten Sie auf die vertauschten Punkt und Komma!

Der gesamte Ausdruck hinter SELECT sieht jetzt so aus:

\s "SELECT Format (`Datum`, 'dd.mm.yyyy') as Datum, `Rechnungsnr#` as Rechnung, Format (`Betrag`, '#,##0.00 €') as Betrag FROM `Rechnungen$` WHERE ((`Kunden-Nr#` = {MERGEFIELD KundenNr}))"

Mehr zu den Befehlen bei SELECT lesen Sie in Punkt 3. SELECT-Anweisung.

Drücken Sie wieder F9 und dann ALT+F9. Jetzt sollte Ihre Tabelle so aussehen:

 

ACHTUNG! Es ist nicht möglich, die Tabelle nachträglich zu formatieren. Wenn Sie ein Format verwenden möchten, müssen Sie im Assistenten vom Beginn dieses Artikels die Option "Tabelle AutoFormat" wählen. Alternativ können Sie auch in das DATABASE nachträglich den Schalter \b einfügen.

Um die Spaltenbreite an den Inhalt anzupassen tragen Sie hinter dem SELECT-Ausdruck ein \b "16". Um das Tabellenformat "Raster 8" zuzuweisen, verwenden Sie den Schalter \l "23".

Das Ende des DATABASE-Feldes sieht jetzt so aus:

{[...] \s "SELECT Format (`Datum`, 'dd.mm.yyyy') as Datum, `Rechnungsnr#` as Rechnung, Format (`Betrag`, '#,##0.00 €') as Betrag FROM `Rechnungen$` WHERE ((`Kunden-Nr#` = {MERGEFIELD KundenNr}))" \b "16" \l "23" \h}

Mehr zu den Schaltern finden Sie hier.

Schritt 5: Gesamtsumme der Beträge berechnen

DATABASE bietet einige Rechenfunktionen wie Summe oder Anzahl. Die Spalte "Betrag" soll addiert werden. Die Gesamtsumme kann nur in einer eigenen Tabelle untergebracht werden, Sie benötigen also ein eigenes DATABASE-Feld für die Summe. Ich habe das vorhandene DATABASE kopiert und unten eingefügt.

SELECT wird folgendermaßen geändert:

Aktualisieren Sie mit F9 und lassen Sie mit ALT+F9 die Tabelle anzeigen.

Der Formatierung sind ein paar Grenzen gesetzt. Eine Einrückung ist genauso möglich wie das zentrieren, auch Fett lässt sich die gesamte Zeile formatieren.

Aber in die Tabelle integrieren kann man die Ziffer nicht und auch nicht an einem Dezimaltabulator ausrichten. Es ist nicht möglich, die Summe neben das Wort "Gesamt" zu setzen.

 

 

Schließen Sie den Seriendruck ab mit "Sendungen | Fertigstellen und zusammenführen | Einzelne Dokumente bearbeiten: Alle".

14.07.2016

DATABASE

Die Feldfunktion mit allen Schaltern finden Sie hier.

Download

Excel-Tabelle und Serienbrief (gezippt, Office 2010-2016)

Nach dem Entzippen und Speichern der beiden Dateien müssen die Pfade des Seriendrucks und im DATABASE-Feld angepasst werden auf den Speicherort, an dem Sie gespeichert haben.