İlk önce 1. satırda verilerinizin üzerine bir başlık satırı ekleyin ve verilerinizin 2. satırdan başlamasını sağlayın.
C2 hücresine şu formülü girin:
=IFERROR(IF(B2="s",A2-INDIRECT("A"&LOOKUP(2,1/($B$1:$B1="s"),ROW($B$1:$B1))),"-"),"n/a")
D2 hücresine şu formülü girin:
=IFERROR(IF(B2<>"s",A2-INDIRECT("A"&LOOKUP(2,1/($B$1:$B1<>"s"),ROW($B$1:$B1))),"-"),"n/a")
Her formülü tüm satırlarınız boyunca doldurun. Bu sonucu alacaksınız:
açıklama
C sütunu formülü ilk önce B sütununun "=" s "olup olmadığını kontrol ederek çalışır, daha sonra lookup
önceki" s "örneği için yukarı doğru B sütununu arar ( ) ve indirect
bununla ilgili tarihe başvurmak için bu örneğin ( ) satır numarasını kullanır. ve tarih toplamını gerçekleştirir. D formülü, "s" den başka bir şeyle eşleşmesi dışında aynı şeyi yapar .
Col C'deki ilk "s" örneği ve col D'deki "S olmayan" ilk örneği hatalarla sonuçlanır (çünkü önceki veriler yoktur), bu nedenle formüller iferror
# N / A'yı değiştiren işlevlerle çevrilidir. temizleyici n / a dizisine hata sonucu (C4 ve D2 hücreleri).
Verileriniz sol üstte başlamazsa
Veri yoksa değil satırda 2 günü başlayacak, yine diyorum nerede yukarıdaki formülleri yapıştırın ve sonra kopyalayıp onlar kağıda olması gereken yerde bunları yapıştırın ve çoğu satır referanslar buna göre güncellenir - Sadece gerekir $1:
başlık satırınızla eşleşecek örnekleri değiştirin (ör. başlık satırınız 25 ise, $1:
bunun örnekleri olur $25:
). Verileriniz A sütununda başlamazsa, sütun harflerini formüllerde uygun şekilde manuel olarak değiştirmeniz gerekecektir. Veri sütununda başlar Örneğin F ardından her örneğini değiştirmek A
için F
, ve her örneğini B
için G
.