Namens- und Datumskonflikt

504
SiniSter

Ich arbeite an einem Projekt und möchte in Excel berechnen, ob der Datumsbereich für einen bestimmten Benutzer in Konflikt geraten würde.

Zum Beispiel "employee" Bill Smith(Zelle B2) hat ein Projekt von 10/17/2018(Zelle C2) bis 10/24/2018(Zelle D2). Wenn ich ein neues Projekt für den Benutzer von 10/18/2018(Zelle C3) bis 10/22/2018(Zelle D3) eingebe, möchte ich, dass ein Konflikt angezeigt wird.

Wie kann dies mit dem Namen aus Spalte B in Übereinstimmung gebracht werden, um einen in Spalte E hervorgehobenen Konflikt anzuzeigen?

1
Können Sie [bearbeiten Sie Ihre Frage] (https://superuser.com/posts/1371884/edit), um uns einige Beispieldaten und die erwartete Ausgabe anzuzeigen? Es würde uns helfen, Vorschläge zu machen, die für Sie funktionieren cybernetic.nomad vor 5 Jahren 0
Die Zahlen in Ihrem Beispiel folgen keinem leicht erkennbaren logischen Muster. Sie haben ein Start- und Enddatum, möchten aber nur Datumsangaben markieren, die in (Start + 1) bis (Ende-2) fallen? JaredT vor 5 Jahren 0

2 Antworten auf die Frage

1
scenography

Sie finden vielleicht eine einfachere Formel, aber hier ist eine. Sortieren Sie zunächst die Zeilen nach Mitarbeiter und Startdatum. Verwenden Sie dann eine Formel, um zu prüfen, ob das Startdatum unterhalb des Enddatums in den obigen Zeilen (für denselben Mitarbeiter) liegt.

Wenn n die Anzahl der darüber liegenden Zeilen ist (für denselben Mitarbeiter), lautet die Formel =IF(n=0, False, C6<MAX(OFFSET(D6, -n, 0, n, 1))). Der Weg zur Berechnung von n ist COUNTIF(OFFSET(B6, -ROW(B6)+1, 0, ROW(B6)-1, 1), B6).

Die gesamte Formel in Zelle E6 lautet =IF(COUNTIF(OFFSET(B6, -ROW(B6)+1, 0, ROW(B6)-1, 1), B6)=0, FALSE, C6<MAX(OFFSET(D6, -COUNTIF(OFFSET(B6, -ROW(B6)+1, 0, ROW(B6)-1, 1), B6), 0, COUNTIF(OFFSET(B6, -ROW(B6)+1, 0, ROW(B6)-1, 1), B6), 1)))

0
Rajesh S

Meine Lösung hat einen anderen Ansatz. Formel überprüft Konflikte in Datumsangaben, wenn die Namen der Mitarbeiter doppelt vorhanden sind.

Formel prüft Konflikte in Dates für Adamin Row, 38 & 39aber nicht für Adam & Samin Row 39 & 40und damit nicht für Sam & Harry.

Wie es funktioniert:

Schreiben Sie diese Formel in die Zelle D39und füllen Sie sie aus.

=IF(AND(A39=A38),IF(OR(B39>=B38,C39<=C38),"Yes","No"),"Diff. Name") 
  • Der erste Teil der Formel prüft, ob Namen ähnlich sind oder nicht, und bei Ja werden Konflikte in Datumsangaben geprüft.
  • Bei neuen Namen gibt die Formel eine Beschriftung zurück Diff. Nameund ignoriert die Überprüfung des Datumskonflikts.
Ihre Lösung funktioniert nur für aufeinanderfolgende Zeilen. Sie erkennt Konflikte in früheren Zeilen nicht. Ich denke, das ist auch die Absicht. Máté Juhász vor 5 Jahren 0
@ MátéJuhász, danke für die Beobachtung, die Formelprüfung ab Zeile 39 bis Harry in Zeile 44. Da Zeile 38 die erste Platte hat, habe ich sie übersprungen, so. Rajesh S vor 5 Jahren 0
Wenn Sie in Zeile 45 einen Datensatz für Sam eingeben, der mit der letzten Zeile in Konflikt steht, kann Ihre Formel ihn nicht finden. Máté Juhász vor 5 Jahren 0
@ MátéJuhász ,, wenn ich `Sam's Rekord (in Zeile 40)` wieder in `Zeile 45`-Formel in Zelle` D45` eingebe, wird 'Diff. Name und wenn "Sam recod (aus Zeile 41 & 42)" in Zeile 46 & 47 "Formel zeigt" Ja "für Konflikt in Zelle` D46 & D47 '.. und ich denke, das, wonach OP sucht !! Jeder wertvolle Vorschlag, die Formel zu ändern !! Rajesh S vor 5 Jahren 0
** Cont ... ** OP möchte den Konflikt zwischen Datumsangaben für doppelte Namen überprüfen, und @scenography hat dieselbe Methode gewählt wie ich. Rajesh S vor 5 Jahren 0