Nov 30 2022 06:32 AM - edited Nov 30 2022 06:33 AM
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
Dec 05 2022 02:45 PM
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.
Dec 07 2022 07:48 AM
Dec 08 2022 01:05 PM
@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.
Dec 08 2022 02:18 PM
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