- Taşma aralığını,
#başvurusunu ve #SPILL! hatasını anlamak - FILTER, SORT, SORTBY ve UNIQUE ile dinamik raporlar hazırlamak
- SEQUENCE ile seriler üretmek ve LET ile formülleri sadeleştirmek
- LAMBDA ile basit adlandırılmış bir işlev oluşturmak
Excel'de yıllarca kural basitti: bir formül, bir hücre. “Bakü'deki tüm siparişleri ayrı bir listede göster” gibi bir iş için filtre, kopyala-yapıştır ya da zahmetli dizi formülleri gerekirdi. Microsoft 365'te ise dinamik diziler var: tek bir formül yazarsın, sonuç ihtiyaç duyduğu kadar hücreye kendiliğinden taşar ve kaynak değişince güncellenir.
Bu ders boyunca tek bir satış tablosu kullanacağız. A1:D9'da Seller, Region, Product, Amount başlıkları ve 8 sipariş var: Aysel (Baku, Laptop, 1200), Murad (Ganja, Phone, 650), Leyla (Baku, Phone, 700), Elvin (Sumgait, Laptop, 1100), Nigar (Baku, Tablet, 480), Rauf (Ganja, Laptop, 1250), Aysel (Baku, Tablet, 520), Murad (Ganja, Laptop, 1150). Tutarlar manat cinsindendir.
Taşma (spill) ve `#` işleci
Dinamik dizi formülünün sonucunun kapladığı hücreler. Formül yalnızca ilk hücrededir; diğer hücreler mavi bir çerçeveyle gösterilir ve elle düzenlenemez.
- F2'ye
=UNIQUE(B2:B9)yaz; F2:F4'te Baku, Ganja ve Sumgait görünür. F2#taşma aralığının tamamına başvurur:=COUNTA(F2#)→ 3. Yeni bir bölge eklenirseF2#da büyür.- G2'ye
=SUMIF(B2:B9,F2#,D2:D9)yaz; tek formül üç toplam verir: 2900, 3050, 1100. - Eski bir çalışma kitabındaki formülün önünde
@görürsen, bu “tek bir değer al” (örtük kesişim) anlamına gelir.
Filtreleme, sıralama, benzersiz liste: FILTER, SORT, SORTBY, UNIQUE
| Formül | Sonuç (taşar) |
|---|---|
=FILTER(A2:D9,B2:B9="Baku") | Bakü'nün 4 siparişi: Aysel 1200, Leyla 700, Nigar 480, Aysel 520 |
=FILTER(A2:D9,B2:B9="Shaki","Sipariş yok") | “Sipariş yok” (3. bağımsız değişken olmasa #CALC!) |
=SORT(A2:D9,4,-1) | tüm tablo tutara göre azalan: Rauf 1250, Aysel 1200, Murad 1150… |
=SORTBY(A2:A9,D2:D9,-1) | yalnızca adlar, ama tutara göre sıralanmış (sıralama sütunu sonuçta yok) |
=UNIQUE(A2:A9) | 6 satıcı: Aysel, Murad, Leyla, Elvin, Nigar, Rauf |
=UNIQUE(A2:A9,,TRUE) | yalnızca bir kez geçenler: Leyla, Elvin, Nigar, Rauf |
=SORT(UNIQUE(C2:C9)) | Laptop, Phone, Tablet |
=TAKE(SORT(A2:D9,4,-1),3) | en büyük 3 sipariş (ilk 3) |
1) Bakü'de 600 ₼'den büyük siparişleri göster. 2) Gence'deki tüm siparişleri ya da herhangi bir bölgedeki tablet siparişlerini göster.
Çözümü gösterÇözümü gizle
1) VE = çarpma:
=FILTER(A2:D9,(B2:B9="Baku")*(D2:D9>600)) → Aysel 1200 ve Leyla 700 (2 satır).2) VEYA = toplama:
=FILTER(A2:D9,(B2:B9="Ganja")+(C2:C9="Tablet")) → Murad 650, Nigar 480, Rauf 1250, Aysel 520, Murad 1150 (5 satır).Her parantez 1 ve 0'lardan oluşan 8 öğeli bir dizi verir; sonucu 0 olmayan satırlar kalır.
SEQUENCE ve LET
- rows, columnskaç satır ve sütun doldurulacağı (sütun varsayılan olarak 1)
- start, stepbaşlangıç değeri ve adım (ikisi de varsayılan olarak 1)
=SEQUENCE(5)→ 1, 2, 3, 4, 5 (sıra numaraları için).=SEQUENCE(3,4)→ 1'den 12'ye 3 × 4'lük bir blok.=SEQUENCE(7,1,DATE(2026,9,28))→ 28.09.2026'dan başlayan bir haftalık tarihler (hücreleri tarih olarak biçimlendir).=SEQUENCE(10,1,10,-1)→ 10'dan 1'e geri sayım.
LET formülün içinde değişkenler oluşturmanı sağlar: =LET(ad1, değer1, ad2, değer2, …, sonuç). Aynı parça formülde birkaç kez geçiyorsa yalnızca bir kez hesaplanır ve formül okunaklı hâle gelir.
Bakü siparişlerinin ortalama tutarını, FILTER'ı iki kez yazmadan LET ile bul.
Çözümü gösterÇözümü gizle
=SUM(FILTER(D2:D9,B2:B9="Baku"))/COUNT(FILTER(D2:D9,B2:B9="Baku")); FILTER iki kez hesaplanır.LET ile:
=LET(baku,FILTER(D2:D9,B2:B9="Baku"),SUM(baku)/COUNT(baku)).baku = {1200; 700; 480; 520}, toplam 2900, adet 4.Sonuç: 2900 / 4 = 725 ₼.
İpucu:
Alt+Enter ile LET'in her çiftini formül çubuğunda yeni bir satıra alabilirsin.LAMBDA: kendi işlevini oluştur
- 1Formülü bir hücrede dene
=LAMBDA(price,vat,price*(1+vat))(100,0.18)yaz; sondaki parantezdeki bağımsız değişkenlerle sonuç 118 olur (%18 KDV'li fiyat). - 2Ad ver
Formulas › Defined Names › Name Manager › New'i aç.Name:WITHVAT,Refers to:=LAMBDA(price,vat,price*(1+vat)).OK'e bas. - 3Sıradan bir işlev gibi kullan
Artık çalışma kitabının her yerinde
=WITHVAT(D2,18%)yazabilirsin. Mantık değişirse onuName Manager'da bir kez düzeltirsin.
Name Manager penceresini aç (LAMBDA adları burada durur)Ctrl+F3Önemli noktalar
- Dinamik dizi formülü tek hücreye yazılır ve komşu hücrelere taşar; sonucun tamamına
F2#ile başvurulur. - #SPILL!, yolda bir engel, birleştirilmiş hücre olduğunu ya da formülün bir Excel tablosunun içinde olduğunu gösterir.
- FILTER'da VE
*ile, VEYA+ile yazılır; 3. bağımsız değişken boş sonucu yönetir. - SORT sütun numarasına, SORTBY başka bir aralığa göre sıralar; UNIQUE yinelenenleri kaldırır.
- LET değişken oluşturur; LAMBDA ise
Name Managerile kendi adlandırılmış işlevini yaratmanı sağlar.
Kendini test et
10 soru. Her doğru cevap XP kazandırır.
=UNIQUE(B2:B9) sonucunun tamamına nasıl başvurulur?