Probleme mit Access

Hallo!
Habe ein Problem bei Access :-/

eine meiner Tabellen sieht folgendermaßen aus:

Patient1 ; (Aufnahmedatum z.b.) 1.1.05 ; (Abgabedatum z.b.) 4.1.05
nächster Patient…

die Daten für den Patienten sind jedoch in einer anderen Tabelle
die so aussieht:

Patient1 ; 1.1.05 ; Wert1
Patient1 ; 2.1.05 ; Wert2
Patient1 ; 3.1.05 ; Wert3
Patient1 ; 4.1.05 ; Wert4
nächster Patient…

jetzt muss ich die Daten aus der zweiten Tabelle der ersten zuordnen. Dafür hat die aber das falsche Format - müssten ja alle Datumswerte
wie in der zweiten untereinanderstehen, nicht nur Aufnahme und Abgabedatum in zwei Spalten.

Hat irgendjemand ne Idee wie ich die erste Tabelle so umstricken kann?
per Hand geht das leider nicht, dafür ist die viel zu riesig.

Hoffe ich habe das einigermaßen verständlich dargestellt :smile:

Wäre für Hilfe sehr dankbar!
lieben Gruß
Thomas

Hallo Thomas,

du kannst beide Tabellen einfach per Abfrage miteinander verbinden.
D.h. du mußt die Tabelle/n gar nicht verändern.

Also eine Abfrage erstellen und beide Tabellen hinzufügen. Über das Feld PATIENT (wenn keine Patientennummer vorhanden ist) eine Beziehung herstellen.

Wenn du, als welchen Gründen auch immer die Daten dann immer noch in eine Tabelle zusammenführen mußt, erstelle eine leere Tabelle und füge die Felder der Tabelle 1 und 2 hinzu.

Du kannst diese Tabelle dann nehmen und die Daten der vorher erstellen Abfrage (siehe oben) importieren in dem du die oben erstellte Abfrage als Anfügeabfrage einstellst.

Grüße aus Essen
Wolfgang

Danke für die schnelle Antwort! :smile:
Leider ist das nicht so einfach da sich die Tabellen nicht 100% entsprechen. Ich benötige aus der ersten Tabelle (in der das Datum nur als von - bis angegeben ist) die Patientennummern und das Datum um dann die Werte aus der 2ten Tabelle (wenn sie denn überhaupt für die jeweiligen Tage vorliegen) anzufügen.
Soll heißen die erste Tabelle dient als Referenz - die Patientennummern und deren Aufenthalte stimmen alle - die Tabelle mit den Daten ist aber ein durcheinander und es liegen evtl. nicht für jeden Tag Werte vor.

jetzt muss ich also meine Referenztabelle in der

Patientennummer ; von(Datum) ; bis (Datum) steht
in

Patientennummer Datum1
Patientennummer Datum2
Patientennummer Datum3
Patientennummer Datum4

umstellen damit ich sie dann mit der anderen verknüpfen kann

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Thomas,

Leider ist das nicht so einfach da sich die Tabellen nicht
100% entsprechen.

doch, es ist so einfach, allerdings mußt du in deinem Fall die Tabelle 2 mit der Tabelle 1 verknüpfen. Also in der Abfrage einfach die Tabellen tauschen und die Verknüpfung entsprechend anpassen.

Du kennst dich mit Access und Abfragen aus? Oder brauchst du ne ausführliche Anleitung dazu?

Grüße aus Essen
Wolfgang

Sorry, verstehe das nicht
wenn doch die erste Tabelle folgende Form hat:

Patientennummer ; Aufnahmezeit ; Entlassungszeit
habe ich ja die Datenfelder: Patientennummer ; Aufnahmezeit ; Entlassungszeit

in der zweiten Tabelle jedoch:
Patientennummer ; erster Tag ; Wert
Patientennummer ; zweiter Tag ; Wert
Patientennummer ; dritter Tag ; Wert
habe ich ja die Datenfelder: Patientennummer ; Tag ; Wert

wie soll ich also der ersten Tabelle, in der ich ja nur ein Aufnahme und Entlassungsdatum habe die Werte der zweiten tabelle zuordnen?

ich kann ja schlecht meinen Wert aus der zweiten Tabelle mit dem Datenfeld Aufnahmezeit verknüpfen - dann würde er ja nur die Werte der zweiten Tabelle dem einen Aufnahmetag zuordnen :-/

Morgen.

Sorry, verstehe das nicht

ich auch nicht. Ich kann absolut nicht nachvollziehen, wieso die erste Tabelle derart „umgestrickt“ werden soll. IMHO sind die Tabellen suboptimal und sollten schon überarbeitet werden…

wenn doch die erste Tabelle folgende Form hat:

Patientennummer ; Aufnahmezeit ; Entlassungszeit
habe ich ja die Datenfelder: Patientennummer ; Aufnahmezeit ;
Entlassungszeit

Das ist noch logisch. (btw: welches Feld ist der Primärschlüssel?)

in der zweiten Tabelle jedoch:
Patientennummer ; erster Tag ; Wert
Patientennummer ; zweiter Tag ; Wert
Patientennummer ; dritter Tag ; Wert
habe ich ja die Datenfelder: Patientennummer ; Tag ; Wert

Das ist auch noch logisch. (btw: was ist hier der Primärschlüssel?)

wie soll ich also der ersten Tabelle, in der ich ja nur ein
Aufnahme und Entlassungsdatum habe die Werte der zweiten
tabelle zuordnen?

Welcher tiefere Sinn liegt denn darin, gerade diese beiden Tabellen zusammen zu führen? Ich kann bisher nicht genau erkennen, was du erreichen willst. In der ersten Tabelle stehen die Aufenthaltszeiten eines Patienten, in der zweiten vermutlich irgendwelche Untersuchungsergebnisse eines bestimmten Tages.

ich kann ja schlecht meinen Wert aus der zweiten Tabelle mit
dem Datenfeld Aufnahmezeit verknüpfen - dann würde er ja nur
die Werte der zweiten Tabelle dem einen Aufnahmetag zuordnen

-/

Vermutlich ein Fehler im Tabellendesign.
Wenn du z.B. in die erste Tabelle ein ID-Feld für den Aufenthalt(Autowert) einbauen würdest, dann kannst du die zweite Tabelle mit der ersten über dieses ID-Feld verknüpfen.

z.B. Tabelle1
AufenthaltsID (Autowert / Primärschlüssel)
Patientennummer (Zahl / Fremdschlüssel zur Patiententabelle)
Aufnahmezeit (Datum/Uhrzeit)
Entlassungszeit (Datum/Uhrzeit)

und Tabelle2
BehandlungsID(oder was das auch sein soll) (Autowert / Primärschlüssel)
AufenthaltsID (Zahl / Fremdschlüssel zu Tabelle1)
Tag (Datum/Uhrzeit)
Wert

Dann kann zu jedem Aufenthalt eines Patienten jeder Tageswert ermittelt werden.
Die Darstellung im Formular/Unterformular bzw. auch Bericht kann dann durchaus (übersichtlich) die Daten beider Tabellen wiedergeben…

CU und hth

Hallo Thomas,

Sorry, verstehe das nicht

ok, hier der SQL-String, den du in eine neue Abfrage einfügst:
(Ansicht/SQL-Ansicht)

SELECT P1.Patientennummer, P2.Tag, *
FROM P2 LEFT JOIN P1 ON P2.Patientennummer = P1.Patientennummer
WHERE (((P2.Tag) Between [aufnahmezeit] And [entlassungszeit]))
ORDER BY P1.Patientennummer, P2.Tag;

über Ansicht/Datenblattansicht kannst du dann das Ergebnis sehen.
Es dürfte deinem Wunsch entsprechenden.

P1 = Tabelle1
P2 = Tabelle2

diese Bezeichnungen müssen ggf. noch anpepasst werden!

Grüße aus Essen
Wolfgang

Hallo Netwolf!

Erstmal vielen Dank - das klappt so wie Du es mir beschrieben hast. :smile: Hättest Du auch noch ne Lösung wie ich meine erste Tabelle umschreiben kann so dass sie in der Form

Patient1 ; Datum1
Patient1 ; Datum2
Patient1 ; Datum3
Patient1 ; Datum4
Patient2 ; Datum1

und nicht mehr

Patient ; Aufnahmedatum ; Abgabedatum

vorliegt.
Damit wäre mir echt geholfen

Gruß
Thomas

Hallo Thomas,

Hättest Du auch noch ne Lösung wie ich meine erste
Tabelle umschreiben kann so dass sie in der Form

nix umschreiben, automatisch erstellen lassen:

meine Abfrage kopieren und wieder einfügen mit neuem Namen. Z.B. TAB_erstellen

  • diese neue Tabelle zum Bearbeiten öffnen (Entwurf)
  • in der Menüleiste ABFRAGE wählen
  • Tabellenerstellungsabfrage wählen
  • Namen für die neue Tabelle eingeben und mit OK bestätigen
  • Abfrage nun schließen und speichern
  • Doppelklick auf die Abfrage erzeugt eine neue Tabelle
  • fertig

Grüße aus Essen
Wolfgang

Hi Wolfgang!
Klappt leider nicht so einfach aus der Abfrage von Dir eine Tabelle zu erstellen. Das Problem ist dass durch das zusammenführen der beiden Tabellen durch Deine Abfrage Daten verloren gehen. Es sind nämlich nicht für alle Tage aus der ersten Tabelle auch Daten in der zweiten vorhanden gewesen - demnach müssten ja Tage an denen der Patient nach Tabelle 1 da war aber in Tabelle 2 keine Daten vorlagen rausgefallen sein

Hi Thomas,

Klappt leider nicht so einfach aus der Abfrage von Dir eine
Tabelle zu erstellen. Das Problem ist dass durch das
zusammenführen der beiden Tabellen durch Deine Abfrage Daten
verloren gehen.

das ist doch keine Problem: dann klick mal auf das schwarze „Band“ (Beziehung) zwischen den Tabellen im oberen Bereich der Abfrage (treffen ist Pflicht) und wähle die dritte Möglichkeit.

fertig

Grüße aus Essen
Wolfgang

Hi Wolfgang!
Auch das klappt leider nicht.
Durch Deine Abfrage ordne ich ja die Werte der Wertetabelle dem entspechendem Datum der Referenztabelle zu. Sind jetzt für ein Datum aus der Referenztabelle keine Werte vorhanden wird auch nichts zugeordnet - ganz egal wie ich die Beziehung definiere