Excel dinamik dizileri, fonksiyonları ve formülleri

  • Bunu Paylaş
Michael Brown

Excel 365 hesaplama motorundaki devrim niteliğindeki güncelleme sayesinde, dizi formülleri sadece süper kullanıcılar için değil, herkes için çok basit ve anlaşılır hale geldi. Bu eğitimde, yeni Excel dinamik dizileri kavramı açıklanıyor ve çalışma sayfalarınızı nasıl daha verimli ve kurulumu çok daha kolay hale getirebilecekleri gösteriliyor.

Excel dizi formülleri her zaman guruların ve formül uzmanlarının ayrıcalığı olarak görülmüştür. Birisi "Bu bir dizi formülü ile yapılabilir" dediğinde, birçok kullanıcının ilk tepkisi "Oh, başka bir yolu yok mu?" olur.

Dinamik dizilerin kullanıma sunulması uzun zamandır beklenen ve memnuniyetle karşılanan bir değişikliktir. Birden fazla değerle herhangi bir hile ve tuhaflık olmadan basit bir şekilde çalışabilmeleri nedeniyle, dinamik dizi formülleri her Excel kullanıcısının anlayabileceği ve oluşturmaktan keyif alabileceği bir şeydir.

    Excel dinamik dizileri

    Dinamik Diziler tek bir hücreye girilen bir formüle göre otomatik olarak hesaplama yapan ve değerleri birden çok hücreye döndüren yeniden boyutlandırılabilir dizilerdir.

    30 yılı aşkın tarihi boyunca Microsoft Excel birçok değişiklik geçirdi, ancak bir şey sabit kaldı - bir formül, bir hücre. Geleneksel dizi formüllerinde bile, sonucun görünmesini istediğiniz her hücreye bir formül girmeniz gerekiyordu. Dinamik dizilerde bu kural artık geçerli değil. Artık, bir değer dizisi döndüren herhangi bir formül otomatik olarak komşu hücrelereCtrl + Shift + Enter tuşlarına basmanıza veya başka herhangi bir hareket yapmanıza gerek kalmadan hücreler. Başka bir deyişle, dinamik dizileri çalıştırmak tek bir hücreyle çalışmak kadar kolay hale gelir.

    Bu kavramı çok basit bir örnekle açıklayayım. Örneğin, farklı yüzdeleri hesaplamak için iki sayı grubunu çarpmanız gerektiğini varsayalım.

    Excel'in dinamik öncesi sürümlerinde, aşağıdaki formül, birden çok hücreye girmediğiniz ve Ctrl + Shift + Enter tuşlarına basarak açıkça bir dizi formülü haline getirmediğiniz sürece yalnızca ilk hücre için çalışır:

    =A3:A5*B2:D2

    Şimdi, aynı formül Excel 365'te kullanıldığında ne olduğunu görün. Sadece bir hücreye (bizim durumumuzda B3) yazarsınız, Enter tuşuna basarsınız... ve tüm öfke bir anda sonuçlarla dolar:

    Birden çok hücrenin tek bir formülle doldurulmasına dökülme ve doldurulan hücre aralığı dökülme aralığı olarak adlandırılır.

    Unutulmaması gereken önemli bir nokta, son güncellemenin Excel'de dizileri işlemenin sadece yeni bir yolu olmadığıdır. Aslında bu, tüm hesaplama motorunda çığır açan bir değişikliktir. Dinamik diziler ile Excel İşlev Kitaplığına bir dizi yeni işlev eklenmiş ve mevcut olanlar daha hızlı ve daha etkili çalışmaya başlamıştır. Sonunda, yeni dinamik dizilerin tamamenCtrl + Shift + Enter kısayoluyla girilen eski moda dizi formüllerini değiştirin.

    Excel dinamik dizilerinin kullanılabilirliği

    Dinamik diziler 2018 yılında Microsoft Ignite Konferansı'nda tanıtıldı ve Ocak 2020'de Office 365 abonelerine sunuldu. Microsoft 365 abonelikleri ve Excel 2021.

    Dinamik diziler bu sürümlerde desteklenmektedir:

    • Windows için Excel 365
    • Mac için Excel 365
    • Excel 2021
    • Mac için Excel 2021
    • iPad için Excel
    • iPhone için Excel
    • Android tabletler için Excel
    • Android telefonlar için Excel
    • Web için Excel

    Excel dinamik dizi işlevleri

    Yeni işlevselliğin bir parçası olarak, Excel 365'te dizileri yerel olarak işleyen ve verileri bir hücre aralığına çıktı olarak veren 6 yeni işlev tanıtıldı. Çıktı her zaman dinamiktir - kaynak verilerde herhangi bir değişiklik olduğunda sonuçlar otomatik olarak güncellenir. Bu nedenle grup adı - dinamik dizi işlevleri .

    Bu yeni işlevler, geleneksel olarak kırılması zor cevizler olarak kabul edilen bir dizi görevle kolayca başa çıkabilir. Örneğin, kopyaları kaldırabilir, benzersiz değerleri çıkarabilir ve sayabilir, boşlukları filtreleyebilir, rastgele tamsayılar ve ondalık sayılar oluşturabilir, artan veya azalan sırada sıralayabilir ve çok daha fazlasını yapabilirler.

    Aşağıda her bir fonksiyonun ne işe yaradığına dair kısa bir açıklamanın yanı sıra derinlemesine eğitimlerin bağlantılarını bulacaksınız:

    1. UNIQUE - bir dizi hücreden benzersiz öğeleri çıkarır.
    2. FILTER - tanımladığınız kriterlere göre verileri filtreler.
    3. SORT - bir hücre aralığını belirtilen bir sütuna göre sıralar.
    4. SORTBY - bir hücre aralığını başka bir aralığa veya diziye göre sıralar.
    5. RANDARRAY - rastgele sayılardan oluşan bir dizi oluşturur.
    6. SEQUENCE - sıralı sayılardan oluşan bir liste oluşturur.
    7. TEXTSPLIT - dizeleri sütunlar ve/veya satırlar arasında belirtilen bir sınırlayıcıya göre böler.
    8. TOCOL - bir dizi veya aralığı tek bir sütuna dönüştürür.
    9. TOROW - bir aralığı veya diziyi tek bir satıra dönüştürür.
    10. WRAPCOLS - satır başına belirtilen değer sayısına göre bir satırı veya sütunu 2B diziye dönüştürür.
    11. WRAPROWS - sütun başına belirtilen değer sayısına göre bir satırı veya sütunu 2B diziye yeniden şekillendirir.
    12. TAKE - bir dizinin başından veya sonundan belirli sayıda bitişik satır ve/veya sütun çıkarır.

    Ayrıca, resmi olarak grupta yer almayan, ancak dinamik dizilerin tüm avantajlarından yararlanan popüler Excel işlevlerinin iki modern alternatifi vardır:

    XLOOKUP - hem sütunlarda hem de satırlarda arama yapabilen ve birden fazla değer döndürebilen VLOOKUP, HLOOKUP ve LOOKUP'ın daha güçlü bir halefidir.

    XMATCH - dikey ve yatay aramalar gerçekleştirebilen ve belirtilen öğenin göreli konumunu döndüren MATCH işlevinin daha çok yönlü bir ardılıdır.

    Excel dinamik dizi formülleri

    Excel'in modern sürümlerinde, dinamik dizi davranışı derinlemesine entegre edilmiştir ve tüm fonksiyonlar Hatta orijinal olarak dizilerle çalışmak üzere tasarlanmamış olanlar bile. Basitçe söylemek gerekirse, birden fazla değer döndüren herhangi bir formül için Excel otomatik olarak sonuçların çıktılandığı yeniden boyutlandırılabilir bir aralık oluşturur. Bu yetenek sayesinde, mevcut işlevler artık sihir yapabilir!

    Aşağıdaki örnekler yeni dinamik dizi formüllerini ve dinamik dizilerin mevcut işlevler üzerindeki etkisini göstermektedir.

    Örnek 1. Yeni dinamik dizi işlevi

    Bu örnek, Excel dinamik dizi işlevleriyle ne kadar hızlı ve basit bir çözüm elde edilebileceğini göstermektedir.

    Bir sütundan benzersiz değerlerin bir listesini çıkarmak için, geleneksel olarak bunun gibi karmaşık bir CSE formülü kullanırsınız. Dinamik Excel'de, ihtiyacınız olan tek şey temel biçiminde bir EŞSİZ formülüdür:

    =UNIQUE(B2:B10)

    Formülü herhangi bir boş hücreye girer ve Enter tuşuna basarsınız. Excel hemen listedeki tüm farklı değerleri çıkarır ve bunları formülü girdiğiniz hücreden (bizim durumumuzda D2) başlayan bir hücre aralığına verir. Kaynak veriler değiştiğinde, sonuçlar yeniden hesaplanır ve otomatik olarak güncellenir.

    Örnek 2. Birkaç dinamik dizi işlevinin tek bir formülde birleştirilmesi

    Bir görevi tek bir işlevle gerçekleştirmenin bir yolu yoksa, birkaç işlevi birbirine zincirleyin! Örneğin, verileri koşula göre filtrelemek ve sonuçları alfabetik olarak düzenlemek için SORT işlevini FILTER'ın etrafına şu şekilde sarın:

    =SORT(FILTER(A2:C13, B2:B13=F1, "Sonuç yok"))

    Burada A2:C13 kaynak veriler, B2:B13 kontrol edilecek değerler ve F1 kriterdir.

    Örnek 3. Yeni dinamik dizi işlevlerinin mevcut işlevlerle birlikte kullanılması

    Excel 365'te uygulanan yeni hesaplama motoru geleneksel formülleri kolayca dizilere dönüştürebildiğinden, yeni ve eski işlevleri bir araya getirmenizi engelleyecek hiçbir şey yoktur.

    Örneğin, belirli bir aralıkta kaç tane benzersiz değer olduğunu saymak için, dinamik dizi UNIQUE işlevini eski güzel COUNTA'nın içine yerleştirin:

    =COUNTA(UNIQUE(B2:B10))

    Örnek 4. Mevcut işlevler dinamik dizileri destekler

    Excel 2016 veya Excel 2019 gibi eski bir sürümde TRIM işlevine bir hücre aralığı sağlarsanız, ilk hücre için tek bir sonuç döndürür:

    =TRIM(A2:A6)

    Dinamik Excel'de, aynı formül tüm hücreleri işler ve aşağıda gösterildiği gibi birden çok sonuç döndürür:

    Örnek 5. Birden çok değer döndürmek için DÜŞEYARA formülü

    Herkesin bildiği gibi, DÜŞEYARA işlevi belirttiğiniz sütun dizinine göre tek bir değer döndürmek üzere tasarlanmıştır. Ancak Excel 365'te, birden çok sütundan eşleşmeler döndürmek için bir dizi sütun numarası sağlayabilirsiniz:

    =VLOOKUP(F1, A2:C6, {1,2,3}, FALSE)

    Örnek 6. TRANSPOSE formülü kolaylaştırıldı

    Önceki Excel sürümlerinde, TRANSPOSE işlevinin sözdizimi hataya yer bırakmıyordu. Çalışma sayfanızdaki verileri döndürmek için orijinal sütunları ve satırları saymanız, aynı sayıda boş hücre seçmeniz ancak yönünü değiştirmeniz (büyük çalışma sayfalarında akıl almaz bir işlem!), seçilen aralığa bir TRANSPOSE formülü yazmanız ve doğru şekilde tamamlamak için Ctrl + Shift + Enter tuşlarına basmanız gerekiyordu.

    Dinamik Excel'de, formülü çıktı aralığının en solundaki hücreye girmeniz ve Enter tuşuna basmanız yeterlidir:

    =TRANSPOSE(A1:B6)

    Tamamdır!

    Dökme aralığı - bir formül, birden çok hücre

    Bu dökülme aralığı dinamik dizi formülü tarafından döndürülen değerleri içeren bir hücre aralığıdır.

    Dökülme aralığındaki herhangi bir hücre seçildiğinde, içindeki her şeyin sol üst hücredeki formül tarafından hesaplandığını göstermek için mavi kenarlık görünür. İlk hücredeki formülü silerseniz, tüm sonuçlar kaybolur.

    Dökülme aralığı, Excel kullanıcılarının hayatını çok daha kolaylaştıran gerçekten harika bir şeydir. Önceden, CSE dizi formülleriyle, bunları kaç hücreye kopyalayacağımızı tahmin etmemiz gerekiyordu. Şimdi, formülü sadece ilk hücreye giriyorsunuz ve gerisini Excel'in halletmesine izin veriyorsunuz.

    Not: Başka bir veri dökülme aralığını engelliyorsa, #SPILL hatası oluşur. Engelleyen veri kaldırıldığında, hata ortadan kalkacaktır.

    Daha fazla bilgi için lütfen Excel dökülme aralığı bölümüne bakın.

    Dökülme aralığı referansı (# sembolü)

    Dökülen aralığa başvurmak için, aralıktaki sol üst hücrenin adresinden sonra bir karma etiket veya pound sembolü (#) koyun.

    Örneğin, A2'deki RANDARRAY formülü tarafından kaç tane rastgele sayı üretildiğini bulmak için, COUNTA işlevine dökülme aralığı başvurusunu sağlayın:

    =COUNTA(A2#)

    Dökülme aralığındaki değerleri toplamak için şunu kullanın:

    =TOPLA(A2#)

    İpuçları:

    • Bir dökülme aralığına hızlı bir şekilde başvurmak için, fareyi kullanarak mavi kutunun içindeki tüm hücreleri seçmeniz yeterlidir; Excel sizin için dökülme ref'ini oluşturacaktır.
    • Normal bir aralık referansının aksine, dökülme aralığı ref dinamiktir ve aralığın yeniden boyutlandırılmasına otomatik olarak tepki verir.
    • Daha fazla ayrıntı için lütfen Dökülme aralığı operatörüne bakın.

      Örtük kesişim ve @ karakteri

      Dinamik dizi Excel'de, formül dilinde önemli bir değişiklik daha vardır - @ karakterinin tanıtılması örtük kesişim operatörü .

      Microsoft Excel'de, örtük kesişim birçok değeri tek bir değere indirgeyen bir formül davranışıdır. Eski Excel'de, bir hücre yalnızca tek bir değer içerebilirdi, bu nedenle varsayılan davranış buydu ve bunun için özel bir işleç gerekmiyordu.

      Yeni Excel'de, tüm formüller varsayılan olarak dizi formülleri olarak kabul edilir. Örtük kesişim işleci, belirli bir formülde istemiyorsanız dizi davranışını önlemek için kullanılır. Başka bir deyişle, formülün yalnızca bir değer döndürmesini istiyorsanız, işlevin adının önüne @ koyun ve geleneksel Excel'de dizi olmayan bir formül gibi davranacaktır.

      Pratikte nasıl çalıştığını görmek için lütfen aşağıdaki ekran görüntüsüne bir göz atın.

      C2'de, sonuçları birçok hücreye yayan dinamik bir dizi formülü vardır:

      =UNIQUE(A2:A9)

      E2'de, işlevin önüne örtük kesişimi çağıran @ karakteri eklenir. Sonuç olarak, yalnızca ilk benzersiz değer döndürülür:

      =@UNIQUE(A2:A9)

      Daha fazla bilgi için lütfen Excel'de Örtük kesişim bölümüne bakın.

      Excel dinamik dizilerinin avantajları

      Kuşkusuz, dinamik diziler son yıllardaki en iyi Excel geliştirmelerinden biridir. Her yeni özellik gibi, güçlü ve zayıf noktaları vardır. Neyse ki, yeni Excel dinamik dizi formüllerinin güçlü noktaları çok fazladır!

      Basit ve daha güçlü

      Dinamik diziler, çok daha basit bir şekilde daha güçlü formüller oluşturmayı mümkün kılar. İşte birkaç örnek:

      • Benzersiz değerleri çıkarın: geleneksel formüller
      • Benzersiz ve farklı değerleri sayma: geleneksel formüller
      • Sütunları alfabetik olarak sıralama: geleneksel formüller

      Tüm formüller için yerel

      Dinamik Excel'de, hangi işlevlerin dizileri destekleyip hangilerinin desteklemediğiyle uğraşmanıza gerek yoktur. Bir formül birden fazla değer döndürebiliyorsa, varsayılan olarak bunu yapacaktır. Bu, bu örnekte gösterildiği gibi aritmetik işlemler ve eski işlevler için de geçerlidir.

      İç içe dinamik dizi işlevleri

      Daha karmaşık görevlere çözüm bulmak için, yeni Excel dinamik dizi işlevlerini birleştirmekte veya burada ve burada gösterildiği gibi eski işlevlerle birlikte kullanmakta özgürsünüz.

      Göreceli ve mutlak referanslar daha az önemlidir

      "Bir formül, birçok değer" yaklaşımı sayesinde, teknik olarak formül sadece tek bir hücrede olduğundan, aralıkları $ işaretiyle kilitlemeye gerek yoktur. Bu nedenle, çoğunlukla, mutlak, göreli veya karışık hücre referanslarının (deneyimsiz kullanıcılar için her zaman bir kafa karışıklığı kaynağı olmuştur) kullanılması gerçekten önemli değildir - dinamik bir dizi formülü yine de doğru sonuçlar üretecektir!

      Dinamik dizilerin sınırlamaları

      Yeni dinamik diziler harikadır, ancak her yeni özellikte olduğu gibi, bilmeniz gereken birkaç uyarı ve husus vardır.

      Sonuçlar normal şekilde sıralanamaz

      Dinamik dizi formülü tarafından döndürülen dökülme aralığı Excel'in Sıralama özelliği kullanılarak sıralanamaz. Böyle bir girişim " Dizinin bir bölümünü değiştiremezsiniz "Sonuçları en küçükten en büyüğe veya tam tersi şekilde düzenlemek için mevcut formülünüzü SORT işlevine sarın. Örneğin, bir seferde bu şekilde filtreleyebilir ve sıralayabilirsiniz.

      Dökülme aralığındaki herhangi bir değer silinemiyor

      Bir yayılma aralığındaki değerlerin hiçbiri aynı nedenden dolayı silinemez: bir dizinin bir kısmını değiştiremezsiniz. Bu davranış beklenen ve mantıklıdır. Geleneksel CSE dizi formülleri de bu şekilde çalışır.

      Excel tablolarında desteklenmez

      Bu özellik (ya da hata?) oldukça beklenmediktir. Dinamik dizi formülleri Excel tabloları içinde çalışmaz, yalnızca normal aralıklar içinde çalışır. Bir dökülme aralığını tabloya dönüştürmeye çalışırsanız, Excel bunu yapacaktır. Ancak sonuçlar yerine yalnızca bir #SPILL! hatası görürsünüz.

      Excel Power Query ile çalışmayın

      Dinamik dizi formüllerinin sonuçları Power Query'ye yüklenemez. Örneğin, Power Query kullanarak iki veya daha fazla dökülme aralığını birleştirmeye çalışırsanız bu işe yaramaz.

      Dinamik diziler ve geleneksel CSE dizi formülleri

      Dinamik dizilerin kullanılmaya başlanmasıyla birlikte iki tür Excel'den bahsedebiliriz:

      1. Dinamik Excel Dinamik dizileri, işlevleri ve formülleri tam olarak destekleyen Excel 365 ve Excel 2021.
      2. Eski Excel yalnızca Ctrl + Shift + Enter dizi formüllerinin desteklendiği geleneksel veya dinamik öncesi Excel olarak da bilinir. Excel 2019, Excel 2016, Excel 2013 ve önceki sürümler.

      Dinamik dizilerin CSE dizi formüllerinden her bakımdan üstün olduğunu söylemeye gerek yoktur. Geleneksel dizi formülleri uyumluluk nedeniyle korunmuş olsa da, bundan sonra yenilerinin kullanılması önerilir.

      İşte en temel farklılıklar:

      • Dinamik bir dizi formülü tek bir hücreye girilir ve normal bir Enter tuşu ile tamamlanır. Eski moda bir dizi formülünü tamamlamak için Ctrl + Shift + Enter tuşlarına basmanız gerekir.
      • Yeni dizi formülleri otomatik olarak birçok hücreye yayılır. CSE formüllerinin birden fazla sonuç döndürmesi için bir hücre aralığına kopyalanması gerekir.
      • Dinamik dizi formüllerinin çıktısı, kaynak aralıktaki veriler değiştikçe otomatik olarak yeniden boyutlandırılır. CSE formülleri, dönüş alanı çok küçükse çıktıyı keser ve dönüş alanı çok büyükse fazladan hücrelerde hata döndürür.
      • Bir dinamik dizi formülü tek bir hücrede kolayca düzenlenebilir. Bir CSE formülünü değiştirmek için tüm aralığı seçmeniz ve düzenlemeniz gerekir.
      • Bir CSE formül aralığında satırları silmek ve eklemek mümkün değildir - önce mevcut tüm formülleri silmeniz gerekir. Dinamik dizilerde, satır ekleme veya silme bir sorun değildir.

      Geriye dönük uyumluluk: eski Excel'de dinamik diziler

      Eski Excel'de dinamik dizi formülü içeren bir çalışma kitabını açtığınızda, formül otomatik olarak {kıvırcık parantez} içine alınmış geleneksel dizi formülüne dönüştürülür. Çalışma sayfasını yeni Excel'de tekrar açtığınızda, küme parantezleri kaldırılır.

      Eski Excel'de, yeni dinamik dizi işlevlerinin ve dökülme aralığı başvurularının önüne, bu işlevin desteklenmediğini belirtmek için _xlfn eklenir. Dökülme aralığı ref işareti (#) ANCHORARRAY işleviyle değiştirilir.

      Örneğin, UNIQUE formülü şu şekilde görünür Excel 2013 :

      Çoğu dinamik dizi formülü (hepsi değil!), siz herhangi bir değişiklik yapana kadar sonuçlarını eski Excel'de görüntülemeye devam eder. Bir formülü düzenlemek formülü hemen bozar ve bir veya daha fazla #NAME? hata değeri görüntüler.

      Excel dinamik dizi formülleri çalışmıyor

      İşleve bağlı olarak, yanlış sözdizimi veya geçersiz bağımsız değişkenler kullanırsanız farklı hatalar oluşabilir. Aşağıda, herhangi bir dinamik dizi formülünde karşılaşabileceğiniz en yaygın 3 hata verilmiştir.

      #SPILL! hata

      Dinamik bir dizi birden fazla sonuç döndürdüğünde, ancak bir şey dökülme aralığını engelliyorsa, #SPILL! hatası oluşur.

      Hatayı düzeltmek için, dökülme aralığındaki tamamen boş olmayan hücreleri temizlemeniz veya silmeniz yeterlidir. Araya giren tüm hücreleri hızlıca tespit etmek için hata göstergesine tıklayın ve ardından Engelleyici Hücreleri Seçin .

      Boş olmayan bir dökülme aralığının yanı sıra, bu hata birkaç başka nedenden kaynaklanıyor olabilir. Daha fazla bilgi için lütfen bkz:

      • Excel #SPILL hatası - nedenleri ve düzeltmeleri
      • VLOOKUP, INDEX MATCH, SUMIF ile #SPILL! hatası nasıl düzeltilir

      #REF! hata

      Çalışma kitapları arasındaki harici referanslar için sınırlı destek nedeniyle, dinamik diziler her iki dosyanın da açık olmasını gerektirir. Kaynak çalışma kitabı kapatılırsa, #REF! hatası görüntülenir.

      #İSİM? hata

      Excel'in eski bir sürümünde dinamik bir dizi işlevi kullanmaya çalışırsanız #ADI? hatası oluşur. Yeni işlevlerin yalnızca Excel 365 ve Excel 2021'de kullanılabildiğini lütfen unutmayın.

      Bu hata desteklenen Excel sürümlerinde ortaya çıkarsa, sorunlu hücredeki işlevin adını iki kez kontrol edin. Büyük olasılıkla yanlış yazılmıştır :)

      Excel'de dinamik diziler bu şekilde kullanılır. Umarım bu harika yeni işlevi seversiniz! Her neyse, okuduğunuz için teşekkür ediyor ve gelecek hafta blogumuzda görüşmeyi umuyorum!

    Michael Brown, yazılım araçlarını kullanarak karmaşık süreçleri basitleştirme tutkusuna sahip, kendini adamış bir teknoloji meraklısıdır. Teknoloji endüstrisinde on yılı aşkın deneyimiyle Microsoft Excel ve Outlook'un yanı sıra Google E-Tablolar ve Dokümanlar'daki becerilerini geliştirdi. Michael'ın blogu, bilgisini ve uzmanlığını başkalarıyla paylaşmaya, üretkenliği ve verimliliği artırmaya yönelik takip etmesi kolay ipuçları ve eğitimler sağlamaya adamıştır. İster deneyimli bir profesyonel, ister yeni başlayan olun, Michael'ın blogu, bu temel yazılım araçlarından en iyi şekilde yararlanmak için değerli bilgiler ve pratik tavsiyeler sunar.