Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Von-Bis Zeitraum als farbigen Balken darstellen





Frage

Hallo Forum, ich möchte die Vermietung eines Bestandes von 200 Rädern mittels Excel-Tabelle überwachen. Was mir als Lösung vorschwebt ist die Darstellung eines Mietzeitraums in form eines farbigen Balken je Rad in einer Zeile, wobei jeder Miettag einer Spalte entsprechen sollte. In der Spaltenüberschrift sollen die Tage eines Monats sowie die 12 Monate des Jahres stehen. Die Erfassung der Mietzeiträume je Rad erfolgt in einem anderen Tabellenblatt der Arbeitsmappe. Bei der Eingabe eines neuen Mietzeitraumes für ein Rad soll eine Überschneidung mit einem bereits gespeicherten Zeitraum als Fehler angezeigt werden. Geht so was mit Excel? Für Lösungsansätze wäre ich echt dankbar! Gruss lothar

Antwort 1 von Aliba

Hi Lothar,

nachdem Du Deinen Tabellenaufbau nicht näher beschrieben hast, hier mal eine kleine Beispieldatei.

Allerdings stelle ich hier kein ganzes Jahr dar, weil erstens in die Spalten kein ganzes Jahr passt und 2. ich nicht weiß,ob das sinnvoll ist.
Die Darstellung der Belegung beginnt immer heute vor 7 Tagen.

Guckst Du hier!!

CU Aliba

Antwort 2 von lothar48

@Aliba,

danke für den Lösungsvorschlag, sieht gut aus! Auf die Lösung mit Summenprodukt zur Erzeugung des Farbbalkens wäre ich nie gekommen! Ich prüfe noch, ob das auf mein Arbeitsblatt übertragbar ist.

Meine Erfassungstabelle sieht ausschnittsweise so aus:

Mietdatum-Von  Mietdatum-Bis   Rad-Nr.


Immer dann, wenn in der Spalte >Rad-Nr.< etwas eingegeben (oder geändert) wird, sollte die Prüfung durchgeführt werden, die Du in die WENN-Abfrage der Spalte D in der Tabelle Erfassung codiert hast. Allerdings würde ich hier lieber eine MsgBox mit einem Hinweis anzeigen, da ich die Erfassungstabelle nicht durch eine weitere Spalte für den Kommentar erweitern kann.
Das Hinterlegen der Formel in der Gültigkeitsprüfung ist nicht möglich, da hier für die Spalte >Rad-Nr.< bereits eine andere Formel, (Prüfung auf gültige Rad-Nr.) vorhanden ist.

Die Logik der WENN-Abfrage müßte also in eine VBA Prozedur gepackt werden die durch das Ereignis "Änderung in Rad-Nr." angestoßen wird. Hab bei VBA nicht so den Durchblick, wäre nett, wenn Du mir da noch einen Tip geben könntest.

Gruss
Lothar

Antwort 3 von Aliba

Hallo Lothar,

hab jetzt mal Deine Erfassung nachgebaut.
Nachdem ich auch nicht so der VB-ler bin, habe ich in Tabelle3 eine Liste per Formel erzeugt, die Folgendes macht.
Jeweils das letzte eingetragene Datum in den von und bis Spalte wird ins Tabellenblatt übernommen. Nun wird geprüft, welche Räder in diesem Zeitrauf frei sind und eine entsprechende Liste erzeugt, die den Namen "Frei" hat.
Diese ist nun in Spalte C der Erfassung als Gültigkeit definiert.
Nachdem du nun von und bis eingetragen hast, werden im Dropdown nur die verfügbaren Räder angzeigt.
Deine Gütligkeitsprüfung auf gültige Radnummer würdest Du dann nicht mehr benötigen.

Guckst Du hier

CU Aliba

Antwort 4 von lothar48

@Aliba

das wäre eine Lösung für mich. Theoretisch müßte das auch so auf mein Arbeitsblatt zu übertragen sein. Kann das im Augenblick aber nicht ausprobieren. Nächste Woche mehr!

Gruss Lothar

Antwort 5 von lothar48

@Aliba
Ich habe Deinen Lösungsvorschlag auf mein Arbeitsblatt angewandt.
Die Formel habe ich angepaßt, da ich nicht nur ein Erfassungstabellenblatt habe, sondern 14 (wochenweise Erfassung).
Für das hier beschriebenes Problem habe ich die Formel der Einfachheit halber auf zwei Tabellenblätter gekürzt.
Eigentlich funktioniert das auch so, wie ich es mir vorgestellt habe!
In zwei Fällen werden allerdings Terminüberschneidungen angezeigt, die keine sind (unterschiedliche Rad-Nrn.)!

Die Ursache dafür liegt mit Sicherheit an der Formel, aber warum?
Ich hab keine Erklärung dafür!

Wäre nett, wenn Du mir dabei noch einmal helfen könntest!

Überschneidungen


Danke im voraus
Lothar

Antwort 6 von Aliba

Hi Lothar,

nimm einfach das ODER aus der Formel raus, das + musst Du aber stehen lassen.
Nachdem SUMMENPRODUKT eigentlich eine Matrixformel ist funktioniert innerhalb dieser Formel das * als UND , während das + als ODER definiert wird.

CU Aliba

Antwort 7 von lothar48

@Aliba
kleine Ursache, große Wirkung, jetzt läuft's wie gewünscht!
Hab jetzt allerdings ein performance-Problem.

die Formel:
=SUMMENPRODUKT((t1radnr=$A12)*(t1dvon<=C$9)*(t1dbis>=C$9)_
              +(t2radnr=$A12)*(t2dvon<=C$9)*(t2dbis>=C$9)_
              +(t3radnr=$A12)*(t3dvon<=C$9)*(t3dbis>=C$9)_
              +(t4radnr=$A12)*(t4dvon<=C$9)*(t4dbis>=C$9)_
              +(t5radnr=$A12)*(t5dvon<=C$9)*(t5dbis>=C$9)_
              +(t6radnr=$A12)*(t6dvon<=C$9)*(t6dbis>=C$9)_
              +(t7radnr=$A12)*(t7dvon<=C$9)*(t7dbis>=C$9)_
              +(t8radnr=$A12)*(t8dvon<=C$9)*(t8dbis>=C$9)_
              +(t9radnr=$A12)*(t9dvon<=C$9)*(t9dbis>=C$9)_
              +(t10radnr=$A12)*(t10dvon<=C$9)*(t10dbis>=C$9)_
              +(t11radnr=$A12)*(t11dvon<=C$9)*(t11dbis>=C$9)_
              +(t12radnr=$A12)*(t12dvon<=C$9)*(t12dbis>=C$9)_
              +(t13radnr=$A12)*(t13dvon<=C$9)*(t13dbis>=C$9)_
              +(t14radnr=$A12)*(t14dvon<=C$9)*(t14dbis>=C$9))


wiederholt sich in 100 Tagesspalten (1.2.07 bis 10.5.07 und das jeweils für 200 Rad-Nrn.

Da kommt Excel ins Schleudern wenn eine Neuberechnung durchgeführt wird und das passiert imer dann, wenn eines von den Erfassungs-Tabellenblätern aktiviert bzw deaktiviert wird oder eine Eingabe unter >Von<, >Bis< oder >Rad-Nr.< gemacht wird!
Die Berechnung dauert dann jeweils ca. 1,5 Minuten. In der Statusszeile kann man den Fortschritt gut verfolgen ("Berechnet Zellen..").

Vielleicht ist eine manuell angestoßene Neuberechnung per VBA-Macro doch effektiver. Ich werde mich mal daran versuchen, oder hast Du noch einen Optimierungsvorschlag?

Jedenfalls nochmal Danke für Deine Hilfe.

Gruss
Lothar