Google E-Tablolar - ilk ve son değer nasıl elde edilir?

Sep 09 2020

Zaman ayırdığınız için teşekkür ederim!

Google Spreadsheets'te bir ticaret günlüğü yapmaya çalışıyorum. İstediğim şey, işlemlerin giriş fiyatı ve çıkış fiyatı, bunlar aşağıdaki ekran görüntüsünde C10 ve C11 hücresi. Doğru değeri manuel olarak yazdım - 960 ve 2200.

Neyse ki, C10 için giriş fiyatı her zaman H2 hücresindekidir, çünkü ilk girdi F sütununda her zaman "Satın Al" olacaktır.

Ancak çıkış değerini bulmakta sıkışıp kaldım. Sadece F sütunu "Sat" içerdiğinde, H sütununun sıfır olmayan son değerini bulmasını istiyorum. Hangi formülü yazabilirim?

görüntü açıklamasını buraya girin

Yanıtlar

1 ziganotschka Sep 09 2020 at 16:31

Bunu bir kombinasyonla yapabilirsiniz

  • INDEX
  • SORGU
  • COUNTA

F'nin "sat" a eşit olduğu ve H'nin 0 olmadığı H sütunundaki girişler için sorgu.

Alınan veri alt kümesinden, son dizine sahip olanı alın (toplam dizin miktarını ile sayarak COUNTA).

Örnek formül:

=INDEX(QUERY(F2:H,"select H where (F='sell' and H <>0)"),COUNTA(query(F2:H,"select H where (F='sell' and H <>0)")),1)

Calculuswhiz Sep 10 2020 at 02:39

Bunu olmadan da yapabilirsiniz QUERY()(gerçekten harika bir işlev olmasına rağmen).

=INDEX(H:H,MAX(IF((F:F="Sell")*H:H,ROW(F:F)),-1))
  1. F Sütununda "Sat" ın göründüğü ve H Sütununda karşılık gelen değerin sıfır olmadığı son satır numarasını bulun. Satır sayısı tekdüze olarak arttığından, MAX()her zaman bize son oluşumu verir. Satır bunun yerine "Satın Al" yazıyorsa veya değer 0 ise, IF()-1 döndürür. 0'ı kullanamayız, çünkü INDEX()bunu yaparsak belli ki tüm aralığı döndürür.
  2. Bu satır numarasını, karşılık gelen değeri elde etmek için H sütunu için bir dizin olarak kullanın. Geçerli bir değer bulunmadıysa, #NUMisterseniz üstesinden gelebileceğiniz bir hata alırız IFERROR().

Not: VLOOKUP()İşlem sıralanmadığından ve yaklaşık bir eşleşme kullanamayız.