collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 54
  • Punkt Versteckte: 1
  • Punkt Mitglieder: 1

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 14542
  • stats Beiträge insgesamt: 72939
  • stats Themen insgesamt: 9848
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 443

Autor Thema: Abfrage für Terminüberschneidungen und visuelle Darstellung  (Gelesen 7480 mal)

Offline centaurus

  • Newbie
  • Beiträge: 2
Hallo,

ich suche eine Lösung für die folgenden 2 Probleme:

1) Ich habe eine Tabelle in der Veranstaltungen und die dazugehörigen Wochentage (z. B. montags, wöchentlich) und Zeitfenster (14-16 Uhr) eingepflegt sind. Eine Abfrage soll nun alle Veranstaltungen anzeigen die sich überschneiden ohne, dass ich für jeden Wochentag und jedes Zeitfenster eine extra Abfrage erstellen muss.

2) Wie lässt sich so eine Abfrage ggf. graphisch darstellen? Am liebsten wäre mir ein Wochenplan auf dem alle sich überschneidenen Veranstaltungen in das jeweilige Zeitfenster geschrieben sind (z. B. montags, 14-16 Veranstaltung Nr. 1,2...)

Schönen Gruß und vielen Dank für Eure Hilfe!
Christian
 

database

  • Gast
Re: Abfrage für Terminüberschneidungen und visuelle Darstellung
« Antwort #1 am: April 11, 2010, 14:34:33 »
Hallo, grüß dich,

also ...

Terminüberschneidungen in einer einzelnen Tabelle zu finden und darzustellen ist nicht ganz einfach - aber das hast du wahrscheinlich selbst auch schon festgestellt.
Die 'Kunst' dabei ist es, einen Weg zu finden, über den nur die Datensätze angezeigt werden, die tatsächlich eine solche Überschneidung darstellen.
Nun, das Geheimnis dahinter ist folgendes:
Ich ging davon aus, dass du eine Tabelle mit dem Namen 'Veranstaltungen' dein Eigen nennst.
In dieser Tabelle sollen die Felder Veranstaltung (Zahl, Long Integer), Wochentag (Text), Start (Datum/Uhrzeit) und Ende (Datum/Uhrzeit) vorhanden sein und ein paar Daten beinhalten.
Aus diesen Einträgen wird ersichtlich, dass sich die Veranstaltungen 1 und 3 am Montag sowie 4 und 5 am Dienstag überschneiden.
Veranstaltung     Wochentag       start     ende
----------------------------------------------------
1                 Montag          14:00:00  15:00:00
2                 Montag          15:30:00  16:00:00
3                 Montag          14:30:00  15:00:00
4                 Dienstag        14:30:00  16:00:00
5                 Dienstag        15:00:00  15:30:00
6                 Dienstag        14:00:00  14:30:00
7                 Donnerstag      15:00:00  15:30:00


Du benötigst das Kreuzprodukt der Abfrage auf die Tabelle Veranstaltungen und auf deren Kopie
Für ein Kreuzprodukt dürfen die beiden Tbellen dann nicht per JOIN verbunden werden!
Folgende SQL ....
SELECT DISTINCT Veranstaltung.Veranstaltung, Veranstaltung_1.wochentag, Veranstaltung.Start, Veranstaltung.Ende
FROM Veranstaltung, Veranstaltung AS Veranstaltung_1
WHERE (((Veranstaltung.Veranstaltung)<>[veranstaltung_1].[veranstaltung]) AND
((Veranstaltung_1.wochentag)=[veranstaltung].[wochentag]) AND
((Veranstaltung.Start)<[veranstaltung_1].[ende]) AND
((Format(IIf([veranstaltung_1.start]<[veranstaltung].[ende],[veranstaltung].[ende]-[veranstaltung_1].[start],""),"hh:nn:ss"))<>""))
ORDER BY Veranstaltung_1.wochentag DESC;
.... folgendes Ergebnis:
Veranstaltung    Wochentag        Start      Ende       ÜberschneidetMit
1                Montag           14:00:00   15:00:00   3
3                Montag           14:30:00   15:00:00   1
4                Dienstag         14:30:00   16:00:00   5
5                Dienstag         15:00:00   15:30:00   4
Wodurch die oben erwähnten und sichtbaren Überschneidungen angezeigt / ausgegeben werden.
Das Feld 'ÜberschneidetMit' dient der Demonstration und ist in obiger SQL nicht enthalten, es würde bei mehr Überschneidungen pro Tag die Datensatzanzahl zu sehr erhöhen (Jede Überschneidung wird für jeden Datensatz 2 x angezeigt)
Die sich überschneidenden Veranstaltungen stehen nach Wochentagen sortiert untereinander.
Dieses Ergebnis bzw. die SQL KANN als Datenherkunft für eine Tabellenerstellungsabfrage verwendet werden.
Die Tabelle könnte dann als Grundlage für eine VBA-Routine herangezogen werden, mit Hilfe der ein Excel-Arbeitsblatt mit den gewünschten Informationen 'gefüttert' wird.
So kann etwa eine Art Wochenplan, wie ich ihn im Anhamg beispielsweise eingefügt habe mit deinen Überschneidungsdaten befüllt wirden.
Um einen graphischen Zusatzeffekt zu erlangen könnte dann noch jede Veranstaltung eine eigene Farbe als Zellhintergrund erhalten.
Leider kann ich dir dazu keine fertige Lösung anbiten .. aber Fragen kannst du gerne im Forum dazu stellen.

Ich habe dir dann nch meine Spieldatei hier hochgeladen damit du beim Testen dein Echtsytem nicht zerwurschteln musst :)
Ein Beispiel für einen Wochenplan ist ebenfalls vorhanden.

HTH

Peter




[Anhang gelöscht durch Administrator]
« Letzte Änderung: April 11, 2010, 16:13:11 von database »
 

Offline centaurus

  • Newbie
  • Beiträge: 2
Re: Abfrage für Terminüberschneidungen und visuelle Darstellung
« Antwort #2 am: April 11, 2010, 20:59:38 »
Hallo Peter,

ich bin beigeistert über Deine kompetente Rückmeldung.

Vielen Dank für die ausführliche Beschreibung und die Beispieldateien!!!

Ich werde die Abfrage gleich ausprobieren und melde mich wegen der graphischen Darstellung via Excel sicherlich noch einmal.

Herzlichen Dank und viele Grüße
Christian




 

cy_one_1

  • Gast
Re: Abfrage für Terminüberschneidungen und visuelle Darstellung
« Antwort #3 am: Januar 21, 2011, 21:30:14 »
Bin durch google gerade auf diesen Thread gestoßen.

Hatte genau das selbe Problem wie centaurus.

Wollte mich auch nur kurz bedanken und feedback geben.

Auch bei mir hat alles super funktioniert. Mußte mich zwar erst einige Zeit mit dem Code befassen - ging dann aber.

Vielen Dank nochmal. :)

 

 

Datensatzzähler in einer Abfrage

Begonnen von peterBoard Tabelle/Abfrage

Antworten: 6
Aufrufe: 16220
Letzter Beitrag Juni 16, 2010, 16:32:34
von cyorps
Datenerfassung mit Abfrage

Begonnen von Daniel-GSBoard Tabelle/Abfrage

Antworten: 2
Aufrufe: 6384
Letzter Beitrag Mai 05, 2010, 22:52:18
von oma
SQL Abfrage DELETE rückgängig machen??

Begonnen von hmfmartinBoard Tabelle/Abfrage

Antworten: 1
Aufrufe: 8841
Letzter Beitrag Mai 08, 2010, 19:18:08
von MzKlMu
6 Mio Datensätze bei Abfrage

Begonnen von JohannaBoard Tabelle/Abfrage

Antworten: 11
Aufrufe: 9843
Letzter Beitrag Mai 19, 2010, 12:29:47
von Wurliwurm
Abfrage aus mehreren Tabellen generieren - Abteilungsbezogen

Begonnen von lenkyBoard Tabelle/Abfrage

Antworten: 16
Aufrufe: 12247
Letzter Beitrag Mai 24, 2010, 09:58:54
von database

Advertisment / Werbung - Amazon Affiliate Links