İLERİ EXCEL FORMÜL MİMARİSİ

OfisData6 dk okuma
Excel yeşil logosu yanında katman katman kurulmuş formül bloklarını simgeleyen sade görsel

İki dosya aynı sonucu hesaplayabilir ama biri altı ay sonra da anlaşılır, diğeri sahibine bile yabancıdır. Aradaki fark formül mimarisidir: sabitleri formülden ayırmak, hesabı katmanlara bölmek ve hücrelere isim vermek. Bu sayfadaki örnek dosya, aynı fiyat hesabının mimarili hâlini gösteriyor — =B6*(1-Iskonto) gibi kendini okutan formüllerle.

Çalışma dosyasını indir (.xlsx) — isimli parametreler + katmanlı fiyat hesabı

Dosyada parametre bloğu (KDV Oranı, İskonto) turuncu hücrelerde; ürün tablosu bu parametrelere isimle bağlanır.

1. Mimarisiz Formülün Maliyeti

=B6*0,9*1,2 formülü çalışır — ama 0,9 nedir, 1,2 nedir? İskonto muydu, kur muydu? KDV oranı değiştiğinde bu 1,2'lerin kaç hücreye gömüldüğünü kimse bilmez; biri atlandığında dosya kısmen güncellenmiş olur ve bu, hepten yanlış olmaktan daha tehlikelidir, çünkü fark edilmez. Mimarisiz formülün maliyeti hesap gücü değil güven kaybıdır: dosyaya kimse dokunmak istemez hâle gelir.

2. İsimli Parametreler

Excel'de KDV oranı ve iskonto değerlerini tutan, ad kutusunda KDV_Orani ismi görünen parametre bloğu

Mimarinin ilk adımı, tüm sabitleri sayfanın tepesindeki PARAMETRELER bloğuna toplamaktır: örnekte KDV Oranı %20 ve İskonto %10 turuncu hücrelerde duruyor. İkinci adım bu hücrelere isim vermek: hücreyi seçip formül çubuğunun solundaki Ad Kutusuna KDV_Orani yazmak yeterli — ekranda ad kutusunda görünen tam olarak bu. Artık formüller B2 yerine isimle konuşur ve KDV oranı değiştiğinde tek hücre güncellenir, isme bağlı her formül kendini düzeltir.

3. Katmanlı Hesap

Ürün tablosunda liste fiyatından net fiyata, net fiyattan KDV'li tutara ilerleyen katmanlı hesap

İkinci ilke, hesabı tek dev formüle sıkıştırmak yerine sütun sütun katmanlamaktır. Örnek tabloda her ürün üç durak geçer:

  • Liste Fiyatı: ham girdi — Klavye 500, Monitör 2.400, Mouse 200.
  • Net Fiyat: =B6*(1-Iskonto) → Klavye 450. Formül kendini okutuyor: "liste fiyatının iskonto düşülmüş hâli".
  • KDV'li: =C6*(1+KDV_Orani) → Klavye 540. Her katman yalnızca bir önceki katmandan okur.

Aynı sonuç =B6*(1-0,1)*(1+0,2) ile tek hücrede de alınırdı; ama katmanlı yapıda 540 yanlış göründüğünde 450'ye bakarsınız — hata iskontoda mı KDV'de mi, ara değer söyler. Katman, formülün hata ayıklama noktasıdır.

4. Mimari Kuralları

  • Formülde çıplak sayı olmaz: her sabit parametre bloğunda, isimle. İstisna, anlamı kendinden olan 1 ve 0 gibi yapısal sayılardır.
  • İsimler kelime söyler: KDV_Orani, Iskonto — Oran1, Deger2 değil. İsimde boşluk olmaz, alt çizgi kullanılır; sayfa adlarıyla çakışan isimlerden kaçının.
  • Bir katman bir iş yapar: "iskonto düş" ve "KDV ekle" iki ayrı sütundur. İki işi yapan katman, hata anında ikiye bölünmesi gereken katmandır.
  • Akış soldan sağa: katmanlar hep sağdaki sütuna ilerler; geriye (sağdan sola) referans veren formül, okuyanın zihin haritasını kırar.
  • Güncel Excel'de LET de var: uzun formülün içinde ara değerlere isim veren LET fonksiyonu, katmanlamayı tek hücrede yapmanın yoludur — sütun katmanı yer kaplıyorsa alternatiftir, mantık aynıdır.

LET'in görünüşü şöyledir — örnekteki üç katman tek hücrede: =LET(liste;B6;net;liste*(1-Iskonto);net*(1+KDV_Orani)). Okunuşu: "liste'ye B6 de, net'e iskontolu hâli de, sonucu KDV'li net olarak ver." Ara sütun kaplamaz ama hata ayıklama noktası da vermez; bu yüzden pratik denge şudur — geliştirme aşamasında sütun katmanları, oturmuş modelde yer kazanmak gerekiyorsa LET.

Özetle

Formül mimarisi üç alışkanlıktır: sabitleri isimli parametre bloğuna ayır, hesabı tek iş yapan katmanlara böl, formülleri isimle okunur kıl. Örnek dosyadaki 500 → 450 → 540 zinciri bu üçünün bir aradaki hâli. Aynı ilkeler dosya ölçeğinde dosya düzeni standartlarına bağlanır; mimariyi karmaşık modellerde uygulamalı kurmak için İleri Excel eğitimi bu yaklaşımın devamını işler.

Sıkça Sorulan Sorular

Hücreye isim nasıl verilir?

Hücreyi seçin, formül çubuğunun solundaki Ad Kutusuna ismi yazıp Enter'a basın — örnekte KDV_Orani böyle tanımlandı. Toplu yönetim için Formüller > Ad Yöneticisi kullanılır: mevcut isimleri görür, düzenler, silersiniz. İsimler çalışma kitabının tamamında geçerlidir.

İsimli aralık formülü gerçekten hızlandırır mı?

Hesap hızını değiştirmez; kazanç okunabilirlik ve bakımdadır. =B6*(1-Iskonto) formülü ne yaptığını kendisi söyler, =B6*(1-$B$3) söylemez. Ayrıca isim tek noktadan güncellenir — iskonto oranı değişince B3'ü kullanan formülleri aramak yerine tek hücre düzeltilir.

Katmanlı hesap fazla sütun kaplamıyor mu?

Kaplıyor ve bu bilinçli bir takas: ara sütunlar hata ayıklama noktalarıdır. Yer sorun olursa ara katman sütunları gizlenebilir veya güncel Excel'deki LET fonksiyonuyla katmanlar tek formülün içine isimli ara değerler olarak alınabilir — mantık aynı kalır, sütun kalabalığı biter.

Formüle sabit gömmek her durumda yanlış mı?

Değişebilecek her değer için yanlış: oranlar, kurlar, limitler, fiyatlar mutlaka parametre hücresine çıkarılmalı. Yapısal sabitler — yüzdeye çevirmek için 100, tersini almak için 1 gibi — formülde kalabilir; bunlar 'değer' değil hesabın grameridir ve kimse onları güncellemez.

LAMBDA ne zaman devreye girer?

Aynı hesap kalıbını birçok yerde tekrarlıyorsanız: LAMBDA, formülünüzü parametreli özel bir fonksiyona çevirir ve Ad Yöneticisi'nden isim verilerek (örn. KDVliNet) her yerde =KDVliNet(B6) gibi çağrılır. Hesap mantığı tek noktada tanımlı kalır — formül mimarisinin en üst katıdır; güncel Excel sürümü gerektirir.

Var olan dağınık dosyayı bu mimariye nasıl geçiririm?

Kopya üzerinde çalışın. Önce Ctrl+ö ile formülleri görünür yapıp gömülü sabitleri listeleyin; her birini parametre bloğuna taşıyıp isim verin ve formüllerde Bul-Değiştir ile sabiti isimle değiştirin. Son adımda uzun formülleri katmanlara bölün. Dosya başına genelde bir-iki saatlik iştir.