Office: Werte sauber anfügen an eine Tabelle

Helfe beim Thema Werte sauber anfügen an eine Tabelle in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, ich habe folgendes Problem in Access 2010: Ich habe 2 Tabellen importiert: Neu1 und Neu2 Was ich jetzt machen möchte ist eine Abfrage... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von mbachmann, 16. Mai 2014.

  1. mbachmann Erfahrener User

    Werte sauber anfügen an eine Tabelle


    Hallo,

    ich habe folgendes Problem in Access 2010:

    Ich habe 2 Tabellen importiert: Neu1 und Neu2

    Was ich jetzt machen möchte ist eine Abfrage zu schreiben, die mir den Prozentsatz von Neu2 hinter den Prozentsatz von Neu1 schreibt, damit ich vergleichen kann, ob dieser größer oder kleiner geworden ist.

    Die Kriterien für Access sind einerseits die Produkt ID und andererseits der Grund der Reklamation.

    Wenn es jetzt allerdings nur einen Prozentwert in Neu1 aber keinen korrespondierenden Wert in Neu2 gibt, soll LEER geschrieben werden. Umgekehrt wenn es einen Prozentwert in Neu2 gibt, aber keinen korrespondierenden Wert in Neu1, soll ein komplett neuer Datensatz geschrieben werden indem im entsprechenden Feld in Neu1 LEER geschrieben wird.

    Ist das machbar?


    VG und Danke!
     
    mbachmann, 16. Mai 2014
    #1
  2. Exl121150 Erfahrener User
    Hallo,

    da im ACCESS-SQL kein OUTER JOIN möglich ist, muss man sich mit Hilfskonstruktionen wie zB. der folgenden abfinden:
    Code:
    SELECT Neu1.[Produkt ID] as ProdID, Neu1.Grund as Grd, Sum(Neu1.Prozentsatz) AS SuProz1, Sum(Neu2.Prozentsatz) AS SuProz2
    FROM Neu1 LEFT JOIN Neu2 ON   (Neu1.Grund = Neu2.Grund) AND (Neu1.[Produkt ID] = Neu2.[Produkt ID])
    GROUP BY Neu1.[Produkt ID], Neu1.Grund
    [COLOR="#0000CD"]UNION ALL
    [/COLOR]SELECT Neu2.[Produkt ID] as ProdID, Neu2.Grund as Grd, Sum(NULL) AS SuProz1, Sum(Neu2.Prozentsatz) AS SuProz2
    FROM  Neu2 
    WHERE  ((SELECT Count(Neu1.Grund) FROM Neu1 WHERE Neu1.Grund = Neu2.Grund)=0) 
        OR ((SELECT Count(Neu1.[Produkt ID]) FROM Neu1 WHERE  Neu1.[Produkt ID]= Neu2.[Produkt ID])=0)
    GROUP BY Neu2.[Produkt ID], Neu2.Grund
    ORDER BY 1,2;
    
    Diese Abfrage ist nicht anzeigbar/eingebbar in der normalen Abfrage-Entwurfsansicht, sondern nur in der Abfrage-SQL-Ansicht.
    Der Grund dafür liegt in der "UNION ALL"-Klausel, die im interaktiven Abfrage-Editor nicht darstellbar ist in ACCESS. Über diese Klausel werden nämlich 2 SELECT-Abfragen zusammengeführt und als 1 Abfrage ausgegeben.

    Die erste dieser Abfragen ist eine "LEFT JOIN"-Abfrage. Damit werden alle Sätze von Tabelle "Neu1" (in gruppierter Form) dargestellt und diejenigen Sätze von Tabelle "Neu2", die mit diesen in den Feldern "Produkt ID" und "Grund" übereinstimmen.
    Übrig bleiben dadurch diejenigen Sätze aus Tabelle "Neu2", die keine Übereinstimmung mit Tabelle "Neu1" in besagten Feldern haben.
    Aus diesem Grund wird im Anschluss an "UNION ALL" eine 2. Abfrage nur mit Tabelle "Neu2" ausgeführt, wo mittels der COUNT(Neu1.Feld)-Funktion erfragt wird, ob die Werte der Felder "Produkt ID" bzw. "Grund" aus Tabelle "Neu2" tatsächlich keine Entsprechung in Tabelle "Neu1" haben: Falls es solche Sätze in "Neu2" gibt, werden sie ebenfalls ausgegeben.

    Die abschließende "ORDER BY 1,2"-Klausel gilt für beide Abfragen, wobei die Felder nur mehr durchnummeriert werden.
     
    Exl121150, 17. Mai 2014
    #2
Thema:

Werte sauber anfügen an eine Tabelle

Die Seite wird geladen...
  1. Werte sauber anfügen an eine Tabelle - Similar Threads - Werte sauber anfügen

  2. Wenn ein Wert ein einer Spalte, dann komplette Zeile im anderen Blatt untereinander einfügen.

    in Microsoft Excel Hilfe
    Wenn ein Wert ein einer Spalte, dann komplette Zeile im anderen Blatt untereinander einfügen.: Hallo, kann mir jemand bitte bei folgenderm Helfen. Habe etwas ähnliches gefunden was ich brauche, nur noch eine kleine Änderung ist notwendig. Aufgabe: Es wird geprüft, ob in Spalte Q ein Wert...
  3. Abfrageergebnis soll keine doppelten Werte enthalten

    in Microsoft Access Hilfe
    Abfrageergebnis soll keine doppelten Werte enthalten: Ich suche nach einer Lösung für folgendes Problem. In einer Tabelle werden Abwesenheiten erfasst. Verknüpft mit einer Mitarbeitertabelle. So erhalte ich eine Übersicht welcher Mitarbeiter aus...
  4. Teilstring einer Zelle auf Wert aus anderer Zelle überprüfen

    in Microsoft Excel Hilfe
    Teilstring einer Zelle auf Wert aus anderer Zelle überprüfen: Hallo zusammen, ich habe in einer Excel-Tabelle in zwei Tabellenblätter. Tabellenblatt "Artikelstamm" beinhaltet in Spalte A eine Artikel-Nr. und diverse weitere Spalten. Hier ein kleiner Auszug:...
  5. konti aufzählung und wert gleicher konti zusammenfassen

    in Microsoft Excel Hilfe
    konti aufzählung und wert gleicher konti zusammenfassen: hallo ich möchte eine automatische konti aufzählung aller gleichen konti und gleichzeitig die werte gleicher konti zusammenfassen (rot sind die zahlen, welche ich errechnen lassen möchte) danke...
  6. Werte zusammenzählen - ab einer Zelle die nächsten 5

    in Microsoft Excel Hilfe
    Werte zusammenzählen - ab einer Zelle die nächsten 5: Hallo. ich würde gerne eine bestimmte Menge an Zellen zusammenzählen. Genau gesagt: Wenn in einer Zelle (A1) die Zahl 5 steht dann soll Excel ab B2 die nächsten 5 Werte zusammenzählen. Wenn...
  7. Bedingte Formatierung basierend auf Wert anderer Zelle

    in Microsoft Excel Hilfe
    Bedingte Formatierung basierend auf Wert anderer Zelle: Hallo zusammen, beim Erreichen des 18. Lebensjahres (Geburtsdatum Spalte D, Alter automatisch in Spalte E kalkuliert) soll eine bedingte Formatierung den Namen und Vornamen der Teilnehmer (Spalte...
  8. Summieren an Hand der letzten x Datums Werte und mit weiteren Kriterien

    in Microsoft Excel Hilfe
    Summieren an Hand der letzten x Datums Werte und mit weiteren Kriterien: Schönen guten Abend, Wie kann man am besten Summieren mit mehreren Kriterien eines soll davon das Datum sein. So das vom Aktuellen Letzten Datums Wert aus gehent die letzten Bsp. 10 Werte...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden