Ana Sayfa Excel REDUCE FONKSİYONU
Excel

REDUCE FONKSİYONU

Paylaş
Paylaş

REDUCE Fonksiyonu Nedir ve Nasıl Kullanılır?

REDUCE fonksiyonu, Excel’in dinamik dizi işlevlerinden biridir ve bir dizi üzerinde belirli bir işlemi adım adım uygulayarak tek bir sonuç değeri elde etmenizi sağlar. Başka bir deyişle, bir dizi üzerinde kümülatif bir hesaplama yaparak diziye “indirgeme” (reduce) işlemi uygular.

Nasıl Çalışır?

  1. Başlangıç için bir ilk değer (başlangıç değeri) belirlenir.
  2. Belirttiğiniz dizi üzerindeki her bir öğe için belirlediğiniz LAMBDA fonksiyonu çalıştırılır.
  3. LAMBDA fonksiyonu, önceki adımdan elde edilen ara değer (akümülatör) ile mevcut öğe üzerinde işlem yaparak yeni bir ara değer döndürür.
  4. Dizi sonuna gelindiğinde elde edilen son ara değer, REDUCE fonksiyonunun sonucunu oluşturur.

Kullanım Örnekleri:

  • Bir dizi değerinin toplamını almak
  • Bir dizi içindeki en büyük veya en küçük değeri bulmak (LAMBDA içinde koşullu mantıkla)
  • Kümülatif işlemler (toplama, çarpma, özel hesaplamalar)

Sözdizimi

=REDUCE(ilk_değer; dizi; işlev)

Argümanlar:

  1. ilk_değer (gerekli):
    Hesaplamaya başlamak için kullanılan ilk değer.
    Örneğin, dizi değerlerini toplamak istiyorsanız, genellikle 0 kullanırsınız. Çarpmak istiyorsanız 1 gibi bir değer kullanılabilir.
  2. dizi (gerekli):
    İşlem yapılacak dizi veya hücre aralığı.
  3. işlev (gerekli):
    • akıcı (accumulator): Her adımda biriken ara değeri temsil eder.
    • değer (value): Dizideki mevcut öğeyi temsil eder.
      Bu LAMBDA fonksiyonu, her adıma özel hesaplamayı tanımlar ve yeni bir akıcı değer döndürür.

Not: LAMBDA fonksiyonunda en az iki parametre kullanılır. “akıc” (akümülatör) bir önceki adımdan gelen değeri, “değer” ise dizideki mevcut öğeyi ifade eder.


Örnek Tablo ve Kullanım

Bir meyve dükkanının ürün fiyatlarını içeren bir tablo düşünelim:

ÜrünFiyat
Elma1.5
Muz2.0
Şeftali2.5
Armut1.8

Amacımız: Bu dört ürünün toplam fiyatını tek bir formülle hesaplamak.

Adımlar:

  1. D1 hücresine “Toplam Fiyat” yazın.
  2. D2 hücresine aşağıdaki formülü girin: =REDUCE(0; B2:B5; LAMBDA(akıc; değer; akıc + değer))

Açıklama:

  • 0: Başlangıç değeri olarak 0 kullanıyoruz, çünkü toplama işlemi yapacağız.
  • B2:B5: Fiyat değerlerinin bulunduğu aralık.
  • LAMBDA(akıcı; değer; akıcı + değer):
    Her bir ürün fiyatını akümülatöre (akıc) ekleyerek biriktirir. İlk ürün için akıc=0 iken değer=1.5, sonuç=1.5 olur. Sonraki adımda akıc=1.5, değer=2.0, yeni akıc=3.5 olur, vb.

Sonuç:

  • Elma (1.5) + Muz (2.0) + Şeftali (2.5) + Armut (1.8) = 7.8
  • D2 hücresinde sonuç 7.8 olarak görünecektir.

Başka Bir Örnek:

Diyelim ki aynı fiyat listesi üzerinde en yüksek değeri bulmak istiyoruz. Bu sefer başlangıç değerini çok küçük bir sayı veya ilk değeri aralıktan seçebilir, LAMBDA fonksiyonunda da değerleri karşılaştırarak en büyüğünü akıc’ta tutabilirsiniz.

=REDUCE(-999999; B2:B5; LAMBDA(akıcı; değer; EĞER(değer>akıcı; değer; akıcı)))

Bu formülde:

  • Başlangıç değeri olarak çok küçük bir sayı (-999999) kullanıyoruz.
  • Her adımda EĞER fonksiyonu ile mevcut değer akıcı’tan büyükse akıcı değer’e güncelliyor, değilse aynı kalıyor.
  • Sonuçta en büyük değer elde edilecektir (bu örnekte 2.5).

İpuçları:

  • Dinamik Diziler: REDUCE fonksiyonu, dinamik dizi mantığı ile çalışır. Dizi döndüren fonksiyonlarla birlikte kullanırken dikkatli olun, çünkü REDUCE genellikle tek bir son değer döndürür.
  • Farklı İşlemler: Sadece toplama veya en büyük/değer bulma değil, ortalama hesaplama, koşullu sayım, özel skor hesaplamaları gibi karmaşık işlemleri de LAMBDA içinde tanımlayabilirsiniz.
  • Hata Yönetimi: Eğer dizi boşsa veya beklenmeyen bir durum varsa, LAMBDA içindeki koşullarla hata yönetimi yapabilir, EĞERHATA gibi fonksiyonları kullanabilirsiniz.

Özet:

REDUCE fonksiyonu, bir dizi üzerinde LAMBDA fonksiyonunu tekrar tekrar uygulayarak tek bir toplu sonuç üretir. Bu sayede tek seferde karmaşık hesaplamalar yapabilir, büyük veri setlerini özetleyebilir ve formüllerinizi daha düzenli ve verimli hale getirebilirsiniz.


🟢Eğitim talepleri için bizimle buradan iletişime geçebilirsiniz. 👉 https://forms.office.com/r/0gMDksLjLg

🟢News from Microsoft 365 bültenimize abone olabilir. 👉 https://www.linkedin.com/newsletters/7076133011028611072/

🟢Microsoft 365 Copilot Community grubumuza katılabilirsiniz. 👉 https://www.linkedin.com/groups/9559408/

Sevgiler ❤️

Paylaş
Yazar
Murat OSMA - Office Applications Unit Manager | Copilot Pioneer

Microsoft 365 Copilot Eğitim ve danışmanlık hizmetinin yanında Copilot Studio ile çözümler geliştiriyorum.🚀 1999 yılında lise yıllarında Excel'le tanıştım. 17 yıldır kurumsal şirketlere ve bireysel kullanıcılara Temel, Orta-İleri, İleri, Uzman, VBA (Makro), Excel Dashboard ve Excel ile Webden Veri Alma Eğitimleri veriyorum. Ayrıca Excel ve VBA Danışmanlık hizmeti de vermekteyim. VBA Developer olarak, şirketlerin Excel'deki işlerini otomasyona dökecek birçok yazılım geliştirdim. 2013 yılında, zor zamanlarda bir fikir olarak doğan ve 2015 Haziran ayında da web tarafında yayına aldığım Excel Arşivi'ni ( www.excelarsivi.com ) büyük bir heyecanla kurdum.

Bir yorum bırak

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Benzer yazılar
Excel

DGET / VAL FONKSİYONU

VAL (DGET) Fonksiyonu Nedir? VAL fonksiyonu (İngilizce: DGET), bir veri tabanı veya...

Excel

IMAGE / RESİM FONKSİYONU

RESİM Fonksiyonu Nedir? RESİM (İngilizce sürümde IMAGE) fonksiyonu, bir hücrede resim görüntülemek...

Excel

TAMİŞGÜNÜ.ULUSL / NETWORKDAYS.INTL FONKSİYONU

Excel’de TAMİŞGÜNÜ.ULUSL fonksiyonu bir başlangıç tarihi ile bitiş tarihi arasındaki çalışma günlerini...

Excel

TAMİŞGÜNÜ / NETWORKDAYS FONKSİYONU

Excel’de TAMİŞGÜNÜ fonksiyonu bir başlangıç tarihi ile bitiş tarihi arasındaki çalışma günlerini...