7.4k Aufrufe
Gefragt in Windows 7 von mamamia Mitglied (348 Punkte)
Hallo,

ich habe folgendes Problem:

Daten:
Auftr.Nr. Pos. Ort Datum Preis1 Preis2
111 100 07 01.03.2012 4,25
111 200 07 01.03.2012 4,00
111 100 07 01.03.2012 4,25
111 200 07 01.03.2012 4,00
112 100 07 02.03.2012 5,25
112 200 07 02.03.2012 5,00
113 100 07 29.02.2012 4,75
113 200 07 29.02.2012 5,00
114 100 06 01.03.2012 6,25
115 100 07 01.03.2012 4,25
115 200 07 01.03.2012 4,25
118 100 07 01.03.2012 6,25
118 200 07 01.03.2012 2,25
111 100 07 01.03.2012 4,25
111 200 07 01.03.2012 4,00
118 100 07 01.03.2012 6,25
118 200 07 01.03.2012 2,25

Nun muss ich folgende Abfrage mit Access 2007 erstellen:

Ort ="07"; Datum " >29.02.2012" Preis1 ">4,00" Preis2 ">5,00"
Nun ist mein Problem, wenn eine Position die Bedingung erfüllt,
muss auch die 2. Position angezeigt werden (Pos. 100 und 200 gehören immer zusammen) und die Positionen werden öfter angezeigt, sie sollten bei der Abfrage nur 1 x erscheinen.
Gibt es eine Lösung in Access 2007?

Viele Grüße

MamaMia

31 Antworten

0 Punkte
Beantwortet von
Hallo MamMia,

habe alle Daten in eine Access-Tabelle eingetragen, die Abfrage wie von mir beschrieben erstellt und das gewünschte Ergebnis erhalten.

Beispiel:
111 100 07 01.03.2012 4,25 Kriterien erfüllt
111 200 07 01.03.2012 4,00 Kriterien nicht erfüllt
beide Positionen müssen erscheinen,


Diees kann aber so nicht funktionieren, da bie Position 200 das Kriteriom nicht erfüllt wird, wird der Datensatz auch nicht angezeigt. Soll dieser Datensatz auch als Ergebnis der Abfrage erscheinen muß das Kriterium >3,99 oder =>4,00 lauten
0 Punkte
Beantwortet von mamamia Mitglied (348 Punkte)
Hallo Ch55,

das ist ja mein Problem, wenn von der Auftragsnummer 1 Position das Kriterium erfüllt, müssen beide Positionen angezeigt werden.
Ich dachte an eine Formel, wie Du sie beschrieben hast und dann ein weiteres Kriterium, wenn Auftragsnummer mit Position 100 oder 200 erfüllt dann Auftragsnummer mit Position 100 oder 200 dazu. Aber ich hab keine Ahnung wie man dies umsetzen könnte.
0 Punkte
Beantwortet von mamamia Mitglied (348 Punkte)
Hallo Paul1,
vielen Dank für Deine Mühe, jetzt hat es hat funktioniert. Es ist sehr aufwändig und ich habe täglich eine Datei mit ca. 3000 Artikel abzufragen, das dauert, aber vorerst ist es meine einzige Lösung.

Viele Grüße
MamaMia
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo MamaMia,

Die Formel für Excel wäre noch zu korrigieren:

statt:
=WENN(UND(G2="OK";B3=200);"x";"")

auf:
=WENN(UND(G2="OK";B2=100;B3=200);"x";"")

Ich weiß, dass diese Möglichkeit mit einigem Aufwand verbunden ist, überhaupt bei diesem Datenvolumen, da die Excelformel bei jeder Analyse runterkopiert werden muß.
Trotz aller Bemühungen und Versuche gelang es mir bis jetzt nicht das ganze mit Access allein in die Kiste zu bringen.

Das Hauptproblem liegt darin, dass Position 200 unmittelbar nach Position 100 nach der Abfrage aufscheinen soll und gleichzeiig auch die Bedingungen (z.B. Preis 1 oder Preis2) erfüllt sein müssen.
Um in Access dieses Kriterium zu schaffen, müsste eine Formel direkt in Access diesen Umstand abdecken, da spießt es sich aber.

Das kann aber so kein Dauerzustand bleiben, ich werde versuchen mir übers Wochenende was einfallen zu lassen, kann aber nichts versprechen.


Gruß

Paul1

P.S.
Wäre es für Dich denkbar, die Datenaufbereitung (Eingabe der Datensätze) mit den Kriterien (Formeln) direkt in einer Excel-Tabelle zu absolvieren und mittels Verknüpfung nach Access zu importieren und anschließend alles andere in Access zu nutzen (das wäre aber noch auszutesten)
0 Punkte
Beantwortet von mamamia Mitglied (348 Punkte)
Hallo Paul1,

ich bin für jede schnelle Lösung dankbar: Da ich aber in Verknüpfungen mit Excel und Access ein totaler "Neuling" bin, musst Du mir wieder jeden Klick genau erklären.

Viele Grüße
MamaMia
0 Punkte
Beantwortet von
Ok,

jetzt hab ich wohl den Fuß von der Leitunn bekommen auf der ich die ganze Zeit stand. Wenn also in einem Auftrag eines oder auch beide der Kriterien erfüllt sind, sollen ALLE Positionen des Auftrages angezeigt werden, oder liege ich schon wieder
daneben ?

Werde am Wochenende ein bißchen daran basteln und noch mal Posten
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo MamaMia,


Folgende Schritte wären einmalig notwendig wenn die Dateneingabe über Excel erfolgt, wobei die bestehende Access-Datei verwendet werden kann, ansonsten wäre es mit Mehrarbeit verbunden.

>neue Exceldatei anlegen(z.B. Tabelle1 verknüpft)
>Datei öffnen
>Daten
>Externe Daten importieren
>Daten importieren
>Datenquelle auswählen
>die bereits vorhandene ACCESS-Datei auswählen
>Tabelle auswählen z.B. Tabelle1 (die in Access bereits angelegt war)
>öffnen
>OK
>Daten importieren
>Bestehendes Arbeitsblatt (markieren)
>OK
>es erscheint die Tabelle1
>In G2 die Formel: =WENN(ODER(E2>4;F2>5);"OK";"nicht OK")
> in H3 die Formel: =WENN(UND(G2="OK";B2=100;B3=200);"x";"nicht zutreffend")
>Schließen und Speichern

>gegenständliche ACCESS-Datei öffnen
>Tabellen
>rechter Klick ins Feld
>Tabellen verknüpfen
>die vorher erstellte EXCEL-Datei (Tabelle1 verknüpft) auswählen
>Verknüpfen
>Verknüpfungsassistent für Kalkulationstabellen
>folge den Assistenten
>erste Spalte enthält Überschriften, Haken setzen (ist meistens bereits vorgegeben)
>Namen vergeben (z.B. Tabelle1 verknüpft)
>Fertigstellen
>Aus der so erstellten Tabelle kannst Du dann die erforderlichen Abfragen etc.
Erstellen
>siehe Beispieldatei

Wie gesagt, diese Arbeit ist nur einmalig, das Arbeiten mit ACCESS ist ganz normal, nur mit dem einzigen Unterschied das die Dateneingabe nur über die EXCEL-Datei möglich ist.

So geht es mit der 2003er Version, mit 2007 ist die Benutzeroberfläche etwas anders, aber ansonsten sollte es funktionieren.

Konzept

Schau es Dir einmal an.

Gruß

Paul1
0 Punkte
Beantwortet von mamamia Mitglied (348 Punkte)
Hallo Ch55,

jetzt liegst Du richtig.
0 Punkte
Beantwortet von mamamia Mitglied (348 Punkte)
Hallo Paul1,

Du hast das so super beschrieben und ich hab es auf Anhieb bis zum Schluss geschafft, aber bei der Fertigstellung der verknüpften Tabelle kommt die Meldung:
"In Microsoft Access werden keine Verknüpfungen
mit einer Access-Datenbank oder einer Microsoft Office Excel Arbeitsmappe in einem Format unterstützt, das einer späteren Version als der des aktuellen Datenformats entspricht". Ich habe Excel 2007 (xlsx) und Access 2007. Ich speichere meine Excel-Datei mal als xls, vielleicht klappt es dann.

Viel Grüße
MamaMia
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo MamaMia,

Sollte aber gehen sagt Microsoft:

Verknüpfen mit Excel>Access 2007

mehr kann ich aus der Ferne nicht sagen


Gruß

Paul1
...