Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Probleme beim lösen einer Access Aufgabe

Begonnen von lutz34, Februar 02, 2011, 12:01:43

⏪ vorheriges - nächstes ⏩

lutz34

Guten Morgen,

ich hätte einmal eine Frage.

Die Aufgabenstellung lautet:
Blutlabor.
Welche Schicht hat wieviele Test im Jahr gemacht?
Jeder Test ist mit Datum und Uhrzeit kodiert z.B: 200923041245
Dabei ist 12:45 die Uhrzeit.
Frühdienst: 6:00 - 13:59
Spätdienst: 14:00 - 21:59
Nachtdienst: 22:00 - 05:59

Das ganze in Excel und Access.

Mein Lösungsansatz:
Access:
- Die Uhrzeit mit der Rechtsfunktion aus den Zahlen herausfiltern bei einer Abfrage
- Tabelle verknüpfen
- Auswahlabfrage verdichten nach Schichtname, Anzahl

Hier bei bin ich mir total unsicher und bin mir sicher das mein ansatz unvollständig
und falsch ist kann mir vill einer helfen?

Excel
- Erstellen einer neuen Spalte
- Erstellen einer Hilfstabelle Schichtname (Früh, Mittag, Spätschicht)
- S_Verweis verbinden
- Verdichten mit Pivottabelle

??

Vielen Dank für eure Hilfe Smile

database

Hallo,

die folgende SQL sollte deine Ergebnisse unter Access (Auswahlabfrage) ermitteln:


SELECT Count(Bluttest.[TID]) AS AnzahlvonTID, IIf(Left(Right([DatCode],4),2)>=6 And Left(Right([DatCode],4),2)<14,"Früh",IIf(Left(Right([DatCode],4),2)>=14 And Left(Right([DatCode],4),2)<22,"Spät","Nacht")) AS Schicht
FROM Bluttest
GROUP BY Left([DatCode],4), IIf(Left(Right([DatCode],4),2)>=6 And Left(Right([DatCode],4),2)<14,"Früh",IIf(Left(Right([DatCode],4),2)>=14 And Left(Right([DatCode],4),2)<22,"Spät","Nacht"))
HAVING (((Left([DatCode],4))=2009));


unter folgender Annahme:

Deine Tabelle heißt 'Bluttest'
Das Feld mit dem codierten Datum heißt 'DatCode' = Text
Das ID-Feld der Tabelle heißt TID = Long

KOPIERE diese SQL mal in eine leere Abfrage und passe die Namen darin an deine Gegebenheiten an - dann ausführen

HTH


lutz34

Dankeschön für deine antwort :)

Ich bräuchte aber nicht die Anwendungsformel sondern wie man theoretisch vorgehen würde um so einen Fall zu bearbeiten.


PS: Ich studiere grad und hab Datenbankmanagement nur als Nebenfach und kenne mich demnach auch nicht so gut in access aus =/

database

Hi,

ZitatIch bräuchte aber nicht die Anwendungsformel ...
...das ist keine Anwendungsformel sondern eine SQL  ;)
Von Theorie hast du aber in deiner Anfrage nix geschrieben


Nun gut, die Theorie dazu für Access:

1. Erstellen einer Auswahlabfrage mit den beteiligten Feldern der abzufragenden Tabelle
2. Auslesen der Jahreszahl per Textfunktion in ein Abfragefeld
3. Feststellen der Schicht per Textfunktion (eingebettet in eine verschachtelte Bedingung)
4. Gruppieren des Abfrageergebnisses und setzen des Kriteriums für das auszuwertende Jahr

Für Excel:

1. Erstellen einer neuen Spalte
2. Ermittlung der Schicht per Textfunktion eingebettet in eine verschachtelte Bedingung) [analog Access-Abfrage]
3. Zählen der ermittelten Werte mittels Analysefunktion (z.B. Histogramm)


Wobei die Vorgensweise bei Excel eine der Möglichkeiten darstellt - prinzipiell wäre natürlich auch deine Vorgehensweise denkbar.
Allerdings ohne Hilfstabelle, sondern die Werte sollten in die neue Spalte
Matrixformel SVERWEIS für die Ermittlung der betroffenen Zeilen und Zählen selbiger einsetzen

Ob hierbei eine  Pivot-Tabelle benötigt wird ... hmmm  m.E. müsste sich das auch mit drei zählfeldern (Zellen) regeln lassen  ???

lutz34

Ja ich weiß habe ich ein bisschen blöd formuliert =/.

Danke für die Antwort :)