Özel işlev M formül dilini kullanır, bir dizi giriş değeri alır ve ardından tek bir çıkış değeri döndürür. Birçok kez yeniden kullanmak veya aynı dönüştürme kümesini farklı bir sorguya veya değere uygulamak istediğiniz mantığınız varsa, özel bir işlev oluşturmayı ve ardından işlevi ihtiyaç duyduğunuz yerde ve zaman çağırmayı göz önünde bulundurun. Özel işlev oluşturmanın birkaç yolu vardır:
-
Kendi let deyiminizi eklemek ve sıfırdan başlamak için Gelişmiş Düzenleyici kullanın.
-
Özel İşlev Çağır komutunu kullanın.
-
İşlev Oluştur ve Sorgu Olarak Ekle komutları da dahil olmak üzere bu yardım konusunda ele alınmayan işlevler oluşturmanın ek yolları vardır. Ayrıntılı bir tartışma için bkz. Power Query M işlevlerini anlama (docs.com)ve Özel işlevleri kullanma (docs.com).
Aşağıda, uzun süreli programlama geleneğini izleyen basit bir özel işlev örneği verilmiştir.
-
Boş sorgu oluşturmak için:Excel Veri'yi seçin> Veri Al > Diğer Kaynaklardan > Boş Sorgu.Power Query Soldaki Sorgular bölmesinde boş bir noktaya sağ tıklayın ve ardından Yeni Sorgu > Diğer Kaynaklar > Boş Sorgu'yu seçin.
-
Sol taraftaki Sorgular bölmesinde ada çift tıklayın ve yeni boş sorguyu "HelloWorld" olarak yeniden adlandırın.
-
Yeni sorguyu ve ardından Giriş > Gelişmiş Düzenleyici'ı seçin.
-
Şablon başlangıç kodunu aşağıdaki kodla değiştirin:
let HelloWorld = () => ("Hello World") in HelloWorld
-
Bitti’yi seçin.
-
"HelloWorld" sorgusunu özel bir işlev olarak değiştirdiniz. İşlev simgesinin sol tarafta
not edin. -
İşlevi çağırmak için, işlevi seçin ve ardından Veri Önizleme'de Çağır'ı seçin.
-
İşlevin sonuçları Veri önizlemesinde görüntülenir ve Sorgular bölmesine varsayılan adı invoked function olan bir sorgu olarak eklenir. "HelloWorldResult" gibi daha anlamlı bir adla yeniden adlandırmak isteyebilirsiniz.
-
Bu sorguyu seçin ve ardından giriş> Kapat & Yükle'yi seçerek sonuçları çalışma sayfasında görebilirsiniz.
Sonuçlar
Aşağıdaki örnekte, bir ondalık sayıyı onaltılık değere dönüştürmek için özel bir işleve parametre geçirme gösterilmektedir.
-
Boş sorgu oluşturmak için:Excel Veri'yi seçin> Veri Al > Diğer Kaynaklardan > Boş Sorgu.Power Query Soldaki Sorgular bölmesinde boş bir noktaya sağ tıklayın ve ardından Yeni Sorgu > Diğer Kaynaklar > Boş Sorgu'yu seçin.
-
Sol taraftaki Sorgular bölmesinde yeni boş sorguyu "MyHex" olarak yeniden adlandırın.
-
Yeni sorguyu ve ardından Giriş > Gelişmiş Düzenleyici'ı seçin.
-
Şablon başlangıç kodunu aşağıdaki kodla değiştirin:
let MyHex = (parameter1) => Number.ToText(parameter1,"X") in MyHex
-
Bitti’yi seçin.
-
"MyHex" sorgusunu özel bir işlev olarak değiştirdiniz. İşlev simgesinin sol tarafta
not edin. -
İşlevi çağırmak için seçin ve Veri Önizlemesi'nde parametre1 kutusuna bir sayı girin ve Çağır'ı seçin.
-
İşlevin sonuçları Veri önizlemesinde görüntülenir ve Sorgular bölmesine varsayılan adı invoked function olan bir sorgu olarak eklenir. "MyHexResult" gibi daha anlamlı bir adla yeniden adlandırmak isteyebilirsiniz.
-
Bu sorguyu seçin ve ardından giriş> Kapat & Yükle'yi seçerek sonuçları çalışma sayfasında görebilirsiniz.
Sonuçlar
En az bir parametreye sahip bir işlev oluşturduysanız, tablodaki her satır için yeni bir sütun ve yeni bir değer oluşturmak için özel işlev olarak çağırabilirsiniz.
-
Sorguyu açmak için daha önce Power Query Düzenleyicisi yüklenmiş bir sorguyu bulun, verilerde bir hücre seçin ve ardından Sorgu > Düzenle'yi seçin. Daha fazla bilgi için bkz. Excel'de sorgu oluşturma, düzenleme ve yükleme (Power Query).Not Bu örnekte sorgunuzun Tam Sayı veri türünde en az bir sütuna ihtiyacı vardır.
-
bölümünde açıklandığı gibi "MyHex" özel işlevini oluşturun ve Gelişmiş Düzenleyici parametresi olan bir özel işlev oluşturun ve çağırın.
-
Sorguda Sütun Ekle'yi seçin > Özel İşlev Çağır'ı seçin. Özel İşlev Çağır iletişim kutusu görüntülenir.
-
Yeni sütun adı kutusuna "HexConvert" gibi yeni sütun adını girin.
-
İşlev sorgusu açılan listesinden önceden tanımlanmış bir özel işlevin adını seçin. Bu örnekte "MyHex" öğesini seçin.
-
Özel işlev bir parametreye başvurduğundan, parametre şimdi görüntülenir.
-
İşleve parametre olarak Tam Sayı veri türünde bir sütun seçin.
-
Tamam’ı seçin.
Sonuç
Parametre olarak girdiğiniz Tam Sayı sütununun Onaltılık değerini gösteren yeni bir sütun oluşturulur.
Ayrıca Bk.
Excel için Power Query Yardımı
Excel’de Power Query formülleri oluşturma