Thema: Berechnungen in Access durchführen

Hallo Leute.

Stehe leider als Access-Anfänger auf dem Schlauch.
Kann mir jemand helfen.

Ich habe eine Grundtabelle, die folgendermaßen aufgebaut ist. Die Spaltenüberschriften lauten.

                Auftragsnummer   Datum       Radwechsel  Auswuchten   Reparatur  Dichtring                             
                5555                    01.01.07         2                 2                   1              1         
                5896                    02.01.07         1                 1                   0              0             

Dann habe ich noch eine separate Preistabelle, die folgendermaßen aussieht.

Artikelnr         Artikel              Preis netto
10912013       Radwechsel        8,50 €       
10912033       Auswuchten      21,00 €
10901001       Reparatur         39,00 €
10475623       Dichtring          14,50 €

Nun möchte ich die Beträge pro Auftrag der beiden oberen Aufträge summieren.
Eine direkte Beziehung über die Artikelnummer kann ich nicht herstellen, da ich mehrere Artikel in einem Datensatz habe.

Wie kann ich diese Berechnung durchführen.

Für eine Beispieldatenbank oder anderweitige Lösung wäre ich sehr dankbar.

Danke im Voraus

Mlceagle

2

Re: Berechnungen in Access durchführen

Hallo mlceagle,

Danke für Deine übersichliche Darstellung.
Dein Problem beginnt hier schon beim Aufbau Deiner Datenbank. Eine wichtige allgemaine Datenbank-Regel ist, dass Tabellen nicht durch das Hinzufügen von Datensätzen in die Breite wachsen dürfen. Bei Dir: weitere Artikel in Tabelle 2 lassen Tabelle 1 in die Breite wachsen. Stell Dir vor, Du hättest 1000 oder mehr Produkte.

Hier ein anderer Aufbau:
Tabelle 2 ist korrekt - ich gebe ihr den Namen Artikel

Tabelle Artikel:
 
    Artikelnr         Artikel              Nettopreis
    10912013       Radwechsel         8,50 €       
    10912033       Auswuchten       21,00 €
    10901001       Reparatur          39,00 €
    10475623       Dichtring           14,50 €

Tabelle Aufträge:

    Auftragsnr       Datum      (Sachbearbeiter, usw.)
    5555               01.01.07
    5896               02.01.07

Nun brauchst Du eine dritte Tabelle...

Tabelle Auftragdetails:

    Auftrag      Artikel         Stückzahl
    5555         10912013     2
    5555         10912033     2
    5555         10901001     1
    5555         10475623     1
    5896         10912013     1
    5896         10912033     1
     

Das ganze schaut nun etwas komplizierter aus, als es ist. Erstellst Du ein Formular für Aufträge mit Unterformular Auftragdetails, brauchst Du nur einmal die Auftragsnummer und Datum eingeben und kannst dann im Unterformular die zum Auftrag gehörenden Artikel eingeben.

Über Deine 1. Tabelle hättest Du z.B. gar keine Abfrage nach Stückzahl machen können, da es keine Spalte Stückzahl gibt. Jetzt kannst Du die für Deine Brerechnungen erforderlichen Abfragen erstellen. Vorausgesetzt, die Beziehungen sind richtig erstellt.

Ich werde mich heute noch hinsetzen und eine Beispieldatenbank hierzu basteln...

LG,
Oliver

[color=#555555]...und hier noch Olivers Kochtipp: wenn Du die Zahnstocher mitessen kannst, hast Du die Rouladen zu lange gekocht!!! :-)[/color]

3

Re: Berechnungen in Access durchführen

Also ich habe jetzt mal so eine Datenbank mit dem Namen Reifendienst kreiert.

http://www.klickdichschlau.at/contentfi … dienst.mdb

Anmerkungen:

Die Felder Auftragsnummer und Artikelnummer besitzen den Felddatentyp Text (Feldgröße 20). Es könnte auch Zahl sein, aber Text hat hier Vorteile. Zahl wird bei z.B. bei zu schmalem Feld als Exponentialzahl angezeigt. Manchmal besitzen Auftragsnummern auch Buchstaben.
Wichtig für die Beziehungen: die verknüpften Felder müssen den gleichen Felddatentyp und die gleiche Feldgröße besitzen.

Damit die Eingabe leichter fällt, habe ich in der Tabelle Auftragsdetails im Feld Artikelnr den Nachschalgeassistenten verwendet.

Die Erstellung des Formulars in dieser Form ist schon etwas gefinkelt - bei weitem nicht mehr ECDL-Niveau. Ich habe zuerst ein Unterformular der Tabellen Auftragdetails und Artikel in tabellarischer Ansicht erstellt. Dieses habe ich dann in das Formular Aufträge eingebaut.
Im Unterformular werden auch die Berechnungen ausgeführt.

Zusätzlich habe ich noch eine Abfrage mit den Berechnungen erstellt.

Eine Schritt für Schritt Anleitung kann ich jetzt auf die schnelle nicht geben, das wären schon ein paar Seiten - aber das Beispiel gäbe echt was her für ein Tutorial und ist vorgemerkt. Da kann man sicher einiges rausholen.

Ich hoffe, Du kannst schon etwas mit der Datenbank anfangen. Wenn Du Fragen hast - einfach wieder hier posten.

Immer ganz wichtig: der Aufbau der Datenbank folgt immer den gleichen Regeln (die so genannten Normalformen einer Datenbank, etc.) und ist unabhängig vom späteren Verwendungszweck. Wenn der Aufbau stimmt, ist später jede weitere Verarbeitung der Daten optimal gewährleistet.

LG,
Oliver

[color=#555555]...und hier noch Olivers Kochtipp: wenn Du die Zahnstocher mitessen kannst, hast Du die Rouladen zu lange gekocht!!! :-)[/color]