Power Pivot’ta DAX Senaryoları

Uygulandığı Öğe
Microsoft 365 için Excel Excel 2024 Excel 2021 Excel 2019 Excel 2016

Bu bölümde, aşağıdaki senaryolarda DAX formüllerinin kullanımını gösteren örneklere bağlantılar sağlanır.

  • Karmaşık hesaplamaları gerçekleştirme
  • Metin ve tarihlerle çalışma
  • Koşullu değerler ve hata testi
  • Akıllı zaman gösterimini kullanma
  • Değerleri derecelendirme ve karşılaştırma

Bu makalede

Başlarken

Sektör lideri profesyoneller ve Microsoft tarafından sağlanan bloglar, örnekler, teknik incelemeler ve videolar da dahil olmak üzere DAX hakkında her türlü bilgiyi bulabileceğiniz DAX Kaynak Merkezi Wiki'sini ziyaret edin.

Senaryolar: Karmaşık hesaplamaları gerçekleştirme

DAX formülleri özel toplamalar, filtreleme ve koşullu değerlerin kullanımını içeren karmaşık hesaplamalar gerçekleştirebilir. Bu bölümde, özel hesaplamalarla çalışmaya başlama örnekleri sağlanır.

PivotTable için özel hesaplamalar oluşturma

CALCULATE ve CALCULATETABLE, hesaplanan alanları tanımlamak için yararlı olan güçlü ve esnek işlevlerdir. Bu işlevler, hesaplamanın gerçekleştirileceği bağlamı değiştirmenize olanak tanır. Ayrıca, gerçekleştirilecek toplama veya matematiksel işlem türünü özelleştirebilirsiniz. Örnekler için aşağıdaki konulara bakın.

Formüle filtre uygulama

DAX işlevinin bağımsız değişken olarak bir tablo aldığı çoğu yerde, tablo adı yerine FİLTRE işlevini kullanarak veya işlev bağımsız değişkenlerinden biri olarak bir filtre ifadesi belirterek, bunun yerine genellikle filtre uygulanmış bir tabloya geçebilirsiniz. Aşağıdaki konu başlıkları altında, nasıl filtre oluşturulacağı ve filtrelerin formüllerin sonuçlarını nasıl etkilediği ile ilgili örnekler verilmiştir. Daha fazla bilgi için bkz: DAX Formüllerinde Verileri Filtreleme.

FİLTRE işlevi bir ifade kullanarak filtre ölçütleri belirtmenize olanak tanırken, diğer işlevler özellikle boş değerleri filtrelemek için tasarlanmıştır.

Dinamik bir oran oluşturmak için filtreleri seçerek kaldırın

Formüllerde dinamik filtreler oluşturarak, aşağıdaki gibi soruları kolayca yanıtlayabilirsiniz:

  • Mevcut ürünün satışlarının yılın toplam satışlarına katkısı ne oldu?
  • Bu bölüm, diğer bölümlerle karşılaştırıldığında, tüm faaliyet yılları için toplam kâra ne kadar katkıda bulunmuştur?

PivotTable'da kullandığınız formüller PivotTable bağlamından etkilenebilir, ancak filtre ekleyerek veya kaldırarak bağlamı seçerek değiştirebilirsiniz. TÜMÜ konusundaki örnekte bunun nasıl yapılacağı gösterilir. Belirli bir bayinin satışlarının tüm bayilerin satışlarına oranını bulmak için, geçerli bağlamın değerini TÜM bağlamın değerine bölerek hesaplayan bir ölçü oluşturun.

ALLEXCEPT konusunda, formüldeki filtrelerin seçime bağlı olarak nasıl temizleneceğine ilişkin bir örnek sağlanır. Her iki örnek de, PivotTable'ın tasarımına bağlı olarak sonuçların nasıl değiştiğini gösterir.

Oran ve yüzdelerin hesaplanmasıyla ilgili diğer örnekler için aşağıdaki konulara bakın:

Dış döngüden bir değer kullanma

DAX, hesaplamalarda geçerli bağlamdaki değerleri kullanmanın yanı sıra, bir dizi ilişkili hesaplama oluştururken önceki bir döngüdeki değeri de kullanabilir. Aşağıdaki konu başlığı altında, dış döngüdeki bir değere başvuran bir formülün nasıl oluşturulacağı açıklanmaktadır. EARLIER işlevi en çok iki iç içe döngü düzeyini destekler.

Satır bağlamı, ilişkili tablolar ve bu kavramın formüllerde nasıl kullanılacağı hakkında daha fazla bilgi edinmek için DAX Formüllerinde Bağlam bölümüne bakın.

Senaryolar: Metin ve Tarihlerle Çalışma

Bu bölümde, metinle çalışma, tarih ve saat değerlerini ayıklama ve oluşturma veya bir koşula göre değerler oluşturma gibi yaygın senaryo örnekleri içeren DAX başvuru konularına bağlantılar sağlanır.

Birleştirme ile anahtar sütun oluşturma

Power Pivot bileşik anahtarlara izin vermez; Dolayısıyla, veri kaynağınızda bileşik anahtarlar varsa, bunları tek bir anahtar sütununda birleştirmeniz gerekebilir. Aşağıdaki konu başlığı altında, bileşik anahtara dayalı bir hesaplanmış sütun oluşturma işlemi örneği sağlanır.

Bir metin tarihinden ayıklanan tarih bölümlerine dayalı olarak tarih oluşturma

Power Pivot tarihlerle çalışmak için bir SQL Server tarih/saat veri türü kullanır; bu nedenle, dış verileriniz farklı biçimlendirilmiş tarihler içeriyorsa (örneğin, tarihleriniz Power Pivot veri altyapısı tarafından tanınmayan bölgesel bir tarih biçiminde yazılmışsa veya verileriniz tamsayı vekil anahtarlar kullanıyorsa) tarih bölümlerini ayıklamak ve sonra bölümleri geçerli bir tarih/saat gösterimi halinde oluşturmak için bir DAX formülü kullanmanız gerekebilir.

Örneğin, bir tamsayı olarak gösterilen ve daha sonra metin dizesi olarak alınan bir tarih sütununuz varsa, aşağıdaki formülü kullanarak dizeyi tarih/saat değerine dönüştürebilirsiniz:

=TARİH(SAĞ([Değer1],4),SOL([Değer1],2),ORTA([Değer1],2))

Değer1 Sonuç
01032009 1/3/2009
12132008 12/13/2008
06252007 6/25/2007

Aşağıdaki konularda, tarihleri ayıklamak ve oluşturmak için kullanılan işlevler hakkında daha fazla bilgi sağlanır.

Özel tarih veya sayı biçimi tanımlama

Verileriniz standart Windows metin biçimlerinden birinde gösterilmeyen tarihler veya sayılar içeriyorsa, değerlerin doğru işlenmesini sağlamak için özel bir biçim tanımlayabilirsiniz. Bu biçimler, değerleri dizelere veya dizelerden dönüştürürken kullanılır. Aşağıdaki konu başlıkları altında, tarih ve sayılarla çalışırken kullanılabilecek önceden tanımlı biçimlerin ayrıntılı bir listesi de sağlanır.

Formül kullanarak veri türlerini değiştirme

Power Pivot'ta, çıktının veri türü kaynak sütunlar tarafından belirlenir ve en iyi veri türü Power Pivot tarafından belirlendiğinden, sonucun veri türünü açıkça belirtemezsiniz. Bununla birlikte çıkış veri türünü değiştirmek için Power Pivot tarafından gerçekleştirilen örtük veri türü dönüşümlerini kullanabilirsiniz. 

  • Bir tarih veya sayı dizesini sayıya çevirmek için 1,0 ile çarpın. Örneğin, aşağıdaki formül geçerli tarihi eksi 3 gün olarak hesaplar ve buna karşılık gelen tamsayı değerini verir.
    =(BUGÜN()-3)*1.0
  • Tarih, sayı veya para birimi değerini dizeye dönüştürmek için değeri boş dizeyle birleştirin. Örneğin, aşağıdaki formül dize olarak bugünün tarihini döndürür.
    =""& BUGÜN()

Belirli bir veri türünün döndürülmesini sağlamak için aşağıdaki işlevler de kullanılabilir:

Gerçek sayıları tamsayılara dönüştürme

Senaryo: Koşullu değerler ve hataları test etme

Excel gibi DAX'ın da verilerdeki değerleri test edip bir koşula göre farklı bir değer döndürmenizi sağlayan işlevleri vardır. Örneğin, yıllık satış miktarına bağlı olarak satıcıları Tercih Edilen veya Değer olarak etiketleyen bir hesaplanan sütun oluşturabilirsiniz. Değerleri sınayan işlevler, beklenmeyen veri hatalarının hesaplamaları bozmasını önlemek için değerlerin aralığını veya türünü denetlemek için de yararlıdır.

Bir koşulu temel alan değer oluşturma

Değerleri sınamak ve koşullu olarak yeni değerler oluşturmak için iç içe EĞER koşulları kullanabilirsiniz. Aşağıdaki konular, koşullu işleme ve koşullu değerlerle ilgili bazı basit örnekler içerir:

Formül içindeki hataları sınama

Excel'den farklı olarak, hesaplanmış sütunun bir satırında geçerli değerler ve başka bir satırda geçersiz değerler bulunamaz. Başka bir deyişle, Power Pivot sütununun herhangi bir bölümünde hata varsa, sütunun tamamı hatayla işaretlenir; böylece geçersiz değerlerle sonuçlanan formül hatalarını her zaman düzeltmeniz gerekir.

Örneğin, sıfıra bölünen bir formül oluşturursanız sonsuzluk sonucunu veya bir hatayı alabilirsiniz. İşlev sayısal değer beklediği halde boş değerle karşılaştığında da bazı formüller başarısız olur. Veri modelinizi geliştirirken, iletiye tıklayıp sorunu giderebilmeniz için hataların gösterilmesini sağlamak en iyisidir. Öte yandan, çalışma kitaplarını yayımladığınızda, beklenmeyen değerlerin hesaplamaların başarısız olmasına yol açmasını önlemek için hata işlemeyi dahil etmelisiniz.

Hesaplanan sütunda hataların döndürülmesini önlemek için, hataları sınamak ve her zaman geçerli değerler döndürmek için mantıksal işlevlerle bilgi işlevlerinin bir bileşimini kullanırsınız. Aşağıdaki konu başlıkları altında, DAX'ta bunun nasıl yapılacağına ilişkin bazı basit örnekler sağlanır:

Senaryolar: Akıllı zaman gösterimi kullanma

DAX akıllı zaman gösterimi işlevleri, verilerinizden tarihleri veya tarih aralıklarını almanıza yardımcı olan işlevler içerir. Daha sonra benzer dönemlerdeki değerleri hesaplamak için bu tarihleri veya tarih aralıklarını kullanabilirsiniz. Akıllı zaman gösterimi işlevleri, değerleri ay, yıl veya üç aylık dönemlere göre karşılaştırmanıza olanak sağlamak için standart tarih aralıklarıyla çalışan işlevler de içerir. Ayrıca, belirtilen dönemin ilk ve son tarihine ait değerleri karşılaştıran bir formül de oluşturabilirsiniz.

Tüm akıllı zaman gösterimi işlevlerinin listesi için bkz. Akıllı Zaman Gösterimi İşlevleri (DAX). Power Pivot çözümlemesinde tarihlerin ve saatlerin etkili bir şekilde kullanılmasıyla ilgili ipuçları için Power Pivot'ta Tarihler konusuna bakın.

Kümülatif satışları hesaplama

Aşağıdaki konu başlıkları altında, kapanış ve açılış bakiyelerinin nasıl hesaplanacağına ilişkin örnekler yer almaktadır. Örnekler, gün, ay, üç ay veya yıl gibi farklı aralıklarda değişen bakiyeler oluşturmanıza olanak tanır.

Zaman içinde değerleri karşılaştırma

Aşağıdaki konu başlıkları altında, farklı dönemlerdeki toplamları karşılaştırma örnekleri yer almaktadır. DAX tarafından desteklenen varsayılan zaman aralıkları ay, çeyrek ve yıllardır.

Özel bir tarih aralığında değer hesaplama

Bir satış promosyonunun başlamasından sonraki ilk 15 gün gibi özel tarih aralıklarını alma örnekleri için aşağıdaki konulara bakın.

Özel bir tarih kümesini almak için akıllı zaman gösterimi işlevlerini kullanırsanız, bu tarih kümesini hesaplamalar yapan bir işleve giriş olarak kullanarak dönemler arasında özel toplamalar oluşturabilirsiniz. Bunun nasıl yapıldığını gösteren bir örnek için aşağıdaki konuya bakın:

  • PARALLELPERIOD İşlevi

    Not

    Özel bir tarih aralığı belirtmeniz gerekmiyorsa, ancak ay, çeyrek veya yıl gibi standart muhasebe birimleriyle çalışıyorsanız, hesaplamaları bu amaçla tasarlanmış TOTALQTD, TOTALMTD, TOTALQTD gibi akıllı zaman gösterimi işlevlerini kullanarak yapmanızı öneririz.

Senaryolar: Değerleri Derecelendirme ve Karşılaştırma

Sütun veya PivotTable'da yalnızca ilk n sayıda öğeyi göstermek için birkaç seçeneğiniz vardır:

  • Üst filtre oluşturmak için Excel'deki özellikleri kullanabilirsiniz. PivotTable'da bir dizi üst veya alt değer de seçebilirsiniz. Bu bölümün ilk bölümünde, PivotTable'daki ilk 10 öğeye nasıl filtre uygulanacağı açıklanmaktadır. Daha fazla bilgi için Excel belgelerine bakın.
  • Değerleri dinamik olarak derecelendiren bir formül oluşturabilir ve sonra sıralama değerlerine göre filtreleyebilir veya sıralama değerini Dilimleyici olarak kullanabilirsiniz. Bu bölümün ikinci kısmında, bu formülün nasıl oluşturulacağı ve daha sonra bu derecelendirmenin bir Dilimleyicide nasıl kullanılacağı açıklanmaktadır.

Her yöntemin avantajları ve dezavantajları vardır.

  • Excel Üst filtresinin kullanımı kolaydır, ancak filtre yalnızca görüntüleme amaçlıdır. PivotTable'ın temelini oluşturan veriler değişirse, değişiklikleri görmek için PivotTable'ı el ile yenilemeniz gerekir. Derecelendirmelerle dinamik olarak çalışmanız gerekiyorsa, DAX'ı kullanarak değerleri bir sütundaki diğer değerlerle karşılaştıran bir formül oluşturabilirsiniz.
  • DAX formülü daha güçlüdür; dahası, sıralama değerini bir Dilimleyiciye ekleyerek Dilimleyiciye tıklamanız yeterlidir ve görüntülenen en yüksek değerlerin sayısını değiştirebilirsiniz. Bununla birlikte, hesaplamalar hesaplama açısından pahalıdır ve bu yöntem çok satırlı tablolar için uygun olmayabilir.

PivotTable'da yalnızca ilk on öğeyi gösterme

PivotTable'da en yüksek veya en düşük değerleri göstermek için
  1. PivotTable'da, Satır Etiketleri başlığındaki aşağı oka tıklayın.
  2. Değer Filtrelerini İlk 10'da> Seçin.
  3. İlk 10 Filtre <sütun adı> iletişim kutusunda, derecelendirilecek sütunu ve değer sayısını aşağıdaki gibi seçin:
    1. En yüksek değerlere sahip hücreleri görmek için Üst'ü veya en düşük değerlere sahip hücreleri görmek için Alt'ı seçin.
    2. Görmek istediğiniz en yüksek veya en düşük değerlerin sayısını yazın. Varsayılan değer 10'dur.
    3. Değerlerin nasıl görüntülenmesini istediğinizi seçin:
AdAçıklamaÖğeleriDeğerlerine göre yalnızca en üstteki ve en alttaki öğelerin listesini görüntülemek üzere PivotTable'a filtre uygulamak için bu seçeneği belirleyin. YüzdePivotTable'ı yalnızca belirtilen yüzdeye eklenen öğeleri görüntüleyecek şekilde filtrelemek için bu seçeneği belirleyin. ToplaEn üstteki ve en alttaki öğelerin değerlerinin toplamını görüntülemek için bu seçeneği belirleyin.
  1. Derecelendirmek istediğiniz değerleri içeren sütunu seçin.
  2. Tamam'a tıklayın.

Formül kullanarak öğeleri dinamik olarak sıralama

Aşağıdaki konu başlığı altında, DAX kullanılarak hesaplanmış sütunda depolanan bir derecelendirme oluşturma örneği yer almaktadır. DAX formülleri dinamik olarak hesaplandığından, temel alınan veriler değişse bile derecelendirmenin doğru olduğundan her zaman emin olabilirsiniz. Ayrıca, formül hesaplanan sütunda kullanıldığından, derecelendirmeyi bir Dilimleyici'de kullanabilir ve ardından ilk 5, ilk 10, hatta ilk 100 değerlerini seçebilirsiniz.