Reservationstool Excel

Copper Contributor

Hallo zusammen

Ich bin zur Zeit an einem Reservationstool im Excel beschäftigt. Ich komme jedoch nicht wirklich weiter... Kann mir jemand weiterhelfen?

Ich möchte, dass Excel prüft, ob das Sitzungsdatum (C4) inkl. dem Start (D4) und Ende (E4) bereits gebucht ist. Der Bereich wäre A7:E25. Wenn ja, sollte die Zelle F4 rot werden oder "ja" zurückgeben und wenn nicht, sollte die Zelle F4 grün werden oder "nein" zurückgeben.

Besten Dank im Voraus

Nikilj__0-1669818782405.png

4 Replies

@Nikilj_ 

Hallo Nikola, damit der Vergleich funktioniert, müssen deine Eingaben nicht als Text sondern als Zahl bzw. Uhrzeit erfolgen. Also Stunden + Doppelpunkt + Minuten. Excelintern ist das eine Zahl und damit lässt sich dann auch arbeiten. Du hast einen Text geschrieben "9.15 Uhr". Das geht nicht. Du kannst dir aber die Zelle im Uhrzeitformat mit Benutzerdefinierten Formaten erstellen wie du willst. Bei der Eingabe musst du dich aber an das vorgegebene Format halten damit Excel deine Eingabe als Uhrzeit interpretieren kann.

Ich habe die Formel mit Sumenprodukt() erstellt, damit keine Hilfsspalte benötigt wird. Die Zelle F4 enthält den Hinweis "Ja" falls bereits gebucht und "Nein" wenn frei. Zusätzlich habe ich die bedingte Formatierung verwendet um bei Ja auch noch rot einzufärben.

Schau dir meine Beispieldatei an und teste die Formel.

=WENN(SUMME(SUMMENPRODUKT(--(C4=C8:C25);--(D4>=D8:D25);--(D4<E8:E25));SUMMENPRODUKT(--(C4=C8:C25);--(D4<=D8:D25);--(E4>D8:D25)))>0;"Ja";"Nein")

 bzw. in englisch:

=IF(SUM(SUMPRODUCT(--(C$4=C8:C25),--(D$4>=D8:D25),--(D$4<E8:E25)),SUMPRODUCT(--(C$4=C8:C25),--(D$4<=D8:D25),--(E$4>D8:D25)))>0,"Ja","Nein")

 

Ich hoffe das passt so für dich.

@dscheikey
Du hast mir sehr weitergeholfen! Vielen herzlichen Dank, es läuft alles bestens. Nun habe ich aber noch etwas... Ich möchte es hinbringen, dass das VBA die Zeile 4 komplett kopiert und die nächste freie Zeile einfügt. Ebenso sollte er den Hintergrund transparent färben, damit das Grau nicht mitkommt. Könntest du mir evtl. dabei behilflich sein?

@Nikilj_  Tut mir schrecklich leid, mit VBA kann ich dir nicht weiter helfen. Ich arbeite mit Excel für das web, da kann man keine Makros erstellen oder bearbeiten. Außerdem kenne ich mich da nur sehr eingeschränkt aus.

@Nikilj_ 

Versuchen Sie

Sub ZeileKopieren()
    Dim r As Long
    r = Range("C" & Rows.Count).End(xlUp).Row + 1
    Range("A4").EntireRow.Copy
    Range("A" & r).PasteSpecial xlPasteValuesAndNumberFormats
    Application.CutCopyMode = False
End Sub