Yazılarımız

Veri Akademi

EXCEL’DE PİVOT TABLE İLE PROJE RAPORLAMASI ÜRETMEK

Proje verisi büyüdükçe “kaç saat harcadık, bütçe nerede şişti, hangi ekip sıkıştı?” sorularına anlık cevap vermek zorlaşır. Bir yanda zaman kayıtları, diğer yanda maliyet kalemleri ve teslim tarihleri vardır; hepsi farklı dosyalarda durur.

Excel’in Pivot Table yeteneğiyle bu parçaları tek bir rapor akışında birleştirmek, özellikle kurumsal yazılım geliştirmede karar vericilerin takip ettiği KPI’ları hızlıca üretmek demektir. Üstelik filtre, dilimleyici ve basit hesaplanan alanlarla “tek tablo, çok bakış” yaklaşımı kurmak mümkündür.

Bu yazıda Pivot Table ile proje raporlaması üretmek için veri modelini hazırlamak, doğru alanları seçmek, hesapları kurgulamak ve yönetim sunumuna uygun çıktı almak adımlarını uçtan uca ele alacağız. Eğer temeli daha sistemli öğrenmek isterseniz Excel eğitimi içeriğine de göz atabilirsiniz.

Proje raporu için veri modelini hazırlamak

Kaynak, görev ve tarih alanlarını standartlamak

Pivot Table’ın “doğru sonuç” üretmesi, giriş verisinin düzenli olmasına bağlıdır. En ideal yapı, tek bir olay tablosu (fact) mantığıdır: her satır bir kayıt; örneğin bir çalışanın bir görevde bir tarihte harcadığı saat ve bunun maliyete etkisi. Tarih alanı mutlaka gerçek tarih olmalı; metin biçimindeki “2026/02/13” gibi değerler tarih gibi görünse de gruplayı bozabilir.

Önerilen kolonlar: Proje, Sprint, Görev Tipi, Ekip, Çalışan, Tarih, Saat, Saatlik Ücret, Maliyet, Durum. “Maliyet” kolonu çoğu zaman Saat * Saatlik Ücret olarak hesaplanır, ancak dış sistemden geliyorsa hazır da tutulabilir.

Veriyi tabloya dönüştürüp isimlendirmek

Ham aralığı seçip Ctrl+T ile Excel Tablosu yapmak, Pivot Table için kritik bir adımdır. Çünkü tablo büyüdükçe Pivot kaynak aralığı otomatik genişler. Tabloya anlamlı bir ad verin: örneğin tblZamanKaydi. Böylece rapor bakımını kolaylaştırmak mümkün olur.

Sprint, ekip, görev tipi ve maliyet sütunlarıyla düzenlenmiş proje zaman kaydı tablosu örneği

Pivot Table kurulumunu adım adım oluşturmak

Pivot alanlarını rapor mantığına göre yerleştirmek

Tablonun içine tıklayın ve Pivot Table oluşturun. İlk rapor için önerilen yerleşim:

  • Satırlar: Proje > Sprint (veya Ay)
  • Sütunlar: Ekip veya Görev Tipi
  • Değerler: Toplam Saat, Toplam Maliyet
  • Filtreler: Durum, Çalışan (gerekiyorsa)

Bu kurgu, hem “proje bazında harcanan saat” hem de “ekip bazında maliyet” sorusuna aynı tabloda cevap verir. Kurumsal paydaşların görmek istediği ilk resim genelde budur: kapsam büyüyor mu, maliyet nereye akıyor mu, teslim riski var mı.

Değer alanlarını doğru özetlemek ve biçimlemek

“Saat” alanı Toplam olmalı; “Maliyet” alanı para birimiyle formatlanmalı. Pivot içinde değer alanı ayarlarından sayı biçimini seçmek, her yenilemede biçimin korunmasını sağlar. Ayrıca binlik ayırıcı kullanmak yönetim raporlarında okunabilirliği ciddi artırır.

KPI üretmek için hesaplanan alanları eklemek

Bütçe sapması ve verimlilik ölçmek

Proje raporlamasında Pivot tablo raporu genelde “ne oldu?” sorusunu yanıtlar; KPI’lar ise “iyi mi gidiyoruz?” sorusunu yanıtlar. Bunun için bütçe ve plan verisi gerekir. Örneğin ayrı bir tabloda (tblPlan) şu kolonlar bulunabilir: Proje, Sprint, Plan Saat, Plan Maliyet. Bu plan tablosunu rapora bağlamanın iki pratik yolu vardır: (1) Power Query ile iki tabloyu birleştirip tek fact tablo yapmak, (2) rapor yanında formülle planı çekip fact’e eklemek.

Aşağıdaki örnek, plan saatini fact tablosuna XLOOKUP ile çekip “Sapma” üretmek içindir. Sonrasında Pivot Table’da bu yeni kolonları da özetleyebilirsiniz.

PlanSaat = XLOOKUP([@Proje]&"|"&[@Sprint], tblPlan[Proje]&"|"&tblPlan[Sprint], tblPlan[Plan Saat], 0)
SaatSapma = [@Saat] - [@PlanSaat]
SapmaYuzde = IF([@PlanSaat]=0, "", [@SaatSapma]/[@PlanSaat])

Bu yaklaşım “proje bütçesi analizi” ve “iş yükü takibi” için oldukça kullanışlıdır. Örneğin SapmaYuzde alanını yüzde formatlayıp, Pivot üzerinde sprint bazında ortalama sapmayı izlemek mümkündür.

Hesaplanan alan mı, ölçü mantığı mı seçmek

Basit senaryolarda Pivot Table’ın “Hesaplanan Alan” özelliği iş görür; ancak karmaşık KPI’larda (ör. “tamamlanan iş başına maliyet”, “kritik hata başına efor”) veriyi önce tabloda üretmek daha güvenilirdir. Çünkü hesaplanan alan, Pivot’un toplama mantığına bağlı kalır ve bazen beklenmeyen sonuç verebilir. Bu yüzden KPI’ı mümkünse satır seviyesinde üretmek ve sonra Pivot’ta toplamak daha stabil bir yol olur.

Filtreleme ve kırılımları yönetmek için dilimleyici kullanmak

Dilimleyici ve zaman çizelgesiyle hızlı kırmak

Yönetim toplantısında raporu açıp “şu ekibi çıkar, şu sprinti seç, sadece kapalı işleri göster” demek sık yaşanır. Dilimleyiciler (Slicer) ile bunu tek tıkla yapmak mümkündür. Önerilen dilimleyiciler: Ekip, Görev Tipi, Durum, Proje. Tarih alanı uygunsa “Zaman Çizelgesi” ekleyip ay/hafta kırılımına hızlı geçiş sağlamak çok etkilidir.

Dilimleyicilerle ekip ve görev tipine göre filtrelenen pivot raporunda saat ve maliyet kırılımı

Çoklu Pivot senaryosunu tek dilimleyiciyle bağlamak

Bir sayfada yalnızca tek Pivot değil, “Saat Trend’i”, “Maliyet Dağılımı”, “Ekip Yükü” gibi birden çok Pivot bulunabilir. Bu durumda aynı dilimleyiciyi hepsine bağlamak gerekir. Dilimleyici seçeneklerinden “Rapor Bağlantıları” (veya benzeri bağlantı menüsü) üzerinden ilgili Pivot’ları işaretleyerek tek filtreyle tüm raporu güncelleyebilirsiniz. Bu yapı, “dashboard hazırlamak” için temel taşlardan biridir.

Raporu güvenilir kılmak için veri kalitesini yönetmek

Boş değerleri ve tutarsız etiketleri ayıklamak

Pivot Table, “(boş)” değerleri ayrı bir kategori gibi gösterir. Bu durum raporu kirletir ve karar vericiyi yanıltabilir. Çözüm, veriyi kaynağında temizlemek ya da Power Query ile normalize etmektir. Örneğin “Backend”, “Back-end”, “BE” gibi ekip etiketlerini tek standarda çekmek; görev tiplerinde “Bug”, “Hata”, “Defect” gibi adları eşlemek raporun doğruluğunu artırır.

Yenileme akışını kurup hata riskini azaltmak

Rapor düzenli kullanılacaksa yenileme ritmi belirlemek gerekir: günlük, sprint sonu, release öncesi gibi. Pivot Table’ı “Dosya açılınca yenilemek” seçeneğiyle kullanmak bazen pratik olsa da, veri kaynağı geç geliyorsa yanlış anlık sonuç gösterebilir. Bu nedenle “yenileme butonu” yaklaşımı ve veri tarihini rapor üstünde göstermek daha kontrollü bir yöntemdir.

RaporTarihi = TEXT(TODAY(),"dd.mm.yyyy")
SonKayitTarihi = MAX(tblZamanKaydi[Tarih])
Uyari = IF(SonKayitTarihi<TODAY()-2,"Veri güncel değil","Veri güncel")

Bu küçük kontrol, paylaşılan raporda güven unsurunu artırır: “veri güncel mi?” sorusunu rapor kendi yanıtlar. Ayrıca “kaynak planlama” ve “sprint raporu” gibi toplantılarda sürprizleri azaltır.

Sunuma hazır çıktı almak için düzenlemek

Pivot grafikleri ve basit gösterge paneli kurmak

Pivot Chart ile “Maliyet Trend’i” ve “Ekip Bazlı Saat” gibi iki grafik eklemek, raporu okunur kılar. Burada amaç görsel şov yapmak değil, karar sinyali vermektir: trend yukarı mı, ekip dengesiz mi, sprintte yoğunlaşma var mı. Grafikleri aynı dilimleyicilerle kontrol ederek “tek ekran yönetim özeti” elde edebilirsiniz.

Paylaşım ve erişim senaryolarını yönetmek

Raporu ekip içinde paylaşırken, veri gizliliği ve erişim kısıtları önemlidir. Çalışan bazlı saat kayıtları hassassa, Pivot’ta Çalışan alanını kaldırıp ekip seviyesinde toplulaştırmak doğru olabilir. Ayrıca “ham veri” sayfasını gizlemek ve rapor sayfasını kilitlemek, yanlışlıkla düzenlemeleri azaltır. Paylaşım hedefiniz e-posta eki mi, Teams/SharePoint mi, yoksa tek dosya mı olacağına göre dosya boyutu ve yenileme stratejisi de planlanmalıdır.


Özetle, pivot tablo ile raporlamayı kurarken en büyük kazanım, proje verisini tek bir modele indirgemek ve aynı veriden farklı bakışlar üretmektir. Doğru alan standardı, hesaplar ve dilimleyicilerle “tek rapor, çok soru” yaklaşımını sürdürülebilir hale getirebilirsiniz. Böylece dashboard mantığıyla daha hızlı karar almak ve proje yönetiminde şeffaflığı artırmak mümkün olur.

 CADSAY