Hata işleme

DaX dilinin Excel işlevine benzer şekilde, Power Query test etmek ve yakalamak için kendi IFERROR söz dizimi vardır.

Hatalarla ilgili makalede belirtildiği gibi, Power Queryadım veya hücre düzeyinde görünebilir. Bu makale, kendi mantığımıza göre hataları nasıl yakalayacak ve yöneteceklerine odaklanacak.

Not

Bu kavramı göstermek için bu makalede veri kaynağı olarak Excel Çalışma Kitabı kullanılır. Burada sergilene kavramlar, yalnızca Power Query çalışma kitabından gelenler için değil, Excel geçerlidir.

Hatalara dayalı koşullu mantık uygulama

Bu tanıtım için örnek veri kaynağı, Excel çalışma kitabıdır:

Veri kaynağından Excel.

Excel Workbook'dan Excel!, #REF! ve #DIV/0 gibi #NULL hataları var! sütununa tıklayın. Bu tabloyu Power Query Düzenleyicisi görüntüde nasıl görüntülen bir görüntü vardır.

Örnek tablo Power Query.

Çalışma kitabındaki hataların Excel her bir hücrede [Error] değeriyle gösterildiğine dikkat edin.

Bu durumda amaç, Standart Rate sütunundaki değerleri kullanan yeni bir Final Rate sütunu oluşturmaktır. Herhangi bir hata varsa, karşılık gelen Özel Oran sütunundaki değeri kullanır.

ve söz dizimi ile try özel sütun otherwise ekleme

Yeni bir özel sütun oluşturmak için Sütun ekle menüsüne gidin ve Özel sütun'ı seçin. Özel sütun penceresine formülünü try [Standard Rate] otherwise [Special Rate] girin. Bu yeni sütuna Final Rate adını girin.

aksi takdirde özel sütunu deneyin.

Yukarıdaki formül Standart Rate sütununu değerlendirmeye ve hata bulunamasa değerinin çıkışını verir. Standart Oran sütununda hatalar bulunursa çıkış, deyiminden sonra tanımlanan değer (bu durumda Özel Oran otherwise sütunu) olur.

Tablodaki tüm sütunlara doğru veri türlerini ekledikten sonra, aşağıdaki görüntüde tablonun son görüntüsü nasıl görünüyor?

Son tablo aksini dener.

özel koşullu mantık ile try hata yakalama ve uygulama

Yeni hedef, önceki bölümle aynı örnek veri kaynağını kullanarak Final Rate için yeni bir sütun oluşturmaktır. Standart Oran'dan gelen değer varsa, bu değer kullanılır. Aksi takdirde, hata içeren satırlar dışında Özel Oran sütunundaki değer #REF! kullanılır.

Not

Hatayı dışlamanın tek #REF! amacı tanıtım amaçlıdır. Bu makaledeki kavramlar sergilense de, herhangi bir hata nedenini, iletisini veya seçiminizin ayrıntılarını hedef alabilirsiniz.

Hata değerinin yanındaki boşluklardan birini seçerek ekranın alt kısmında ayrıntılar bölmesini görürsünüz. Ayrıntılar bölmesi hem hata nedenini hem de DataFormat.Error hata iletisini Invalid cell value '#REF!' içerir:

Örnek hata.

Aynı anda yalnızca bir hücreyi seçerek aynı anda yalnızca bir hata değerinin hata bileşenlerini görüntüebilirsiniz. Burada yeni bir özel sütun oluşturabilir ve ifadeyi try kullanabilirsiniz.

Söz dizimi içeren özel sütun try ekleme

Yeni bir özel sütun oluşturmak için Sütun ekle menüsüne gidin ve Özel sütun'ı seçin. Özel sütun penceresine formülünü try [Standard Rate] girin. Bu yeni sütuna Tüm Hatalar adını girin.

Özel sütunda try kullanma.

İfade, değerleri ve hataları, ifadenin bir hatayı işip işlememesi, ayrıca uygun değeri veya hata kaydını gösteren bir kayıt try try değerine dönüştürür.

Kayıt değerlerini deneyin.

Yeni oluşturulan bu sütunu kayıt değerleriyle genişletebilirsiniz ve sütun başlığının yanındaki simgeyi seçerek genişletilecek kullanılabilir alanlara bakabilirsiniz.

Kayıt değerlerini genişletin.

Bu işlem üç yeni alanı ortaya çıkarır:

  • Tüm Errors.HasError — Standart Rate sütunundaki değerin hata olup olmadığını görüntüler.
  • Tüm Errors.Value — Standart Rate sütunundaki değerde hata yoksa, bu sütun Standart Rate sütunundaki değeri görüntüler. Hata içeren değerler için bu alan kullanılamaz ve genişletme işlemi sırasında bu sütunda değerler null olur.
  • Tüm Errors.Error — Standart Rate sütunundaki değerde hata varsa, bu sütun Standart Rate sütunundaki değer için hata kaydını görüntüler. Hatasız değerler için bu alan kullanılamaz ve genişletme işlemi sırasında bu sütunda değerler null olur.

Genişletilmiş alanları deneyin.

Daha fazla araştırma için Tüm Hatalar.Hata sütununu genişletebilirsiniz ve hata kaydının üç bileşenine sahip olursanız:

  • Hata nedeni
  • Hata iletisi
  • Hata ayrıntısı

Genişletme işlemi tamam olduktan sonra Tüm Errors.Error.Message alanı, her hücrenin tam olarak hangi hataya sahip olduğunu Excel hata iletisini görüntüler. Hata iletisi, hata kaydının Hata İletisi alanından türetildi.

Belirli bir hata iletisi.

Koşullu sütun ekleme

Artık her hata iletisi yeni bir sütunda, Final Rate adıyla ve aşağıdaki yan tümcelerle yeni bir koşullu sütun oluşturabilirsiniz:

  • All Errors.Errors.Message sütunundaki değer değerine eşitse, çıkış Standart null Oran sütunundaki değer olur.
  • Yoksa, Tüm Errors.Errors.Message sütunundaki değer değerine eşitse, çıkış Özel Invalid cell value '#REF!'. Oran sütunundaki değer olur.
  • Yoksa null olur.

Hata iletisinden koşullu sütun.

Yalnızca Account , Standard Rate, Special Rate ve Final Rate sütunlarını saklayarak ve her sütun için doğru veri türünü ekledikten sonra, aşağıdaki görüntüde tablonun son görüntüsü görüntülenir.

Veri türlerine sahip son tablo.

Diğer kaynaklar