Excel'deki bir formülü Ctrl-Shift-Enter olmadan bir Dizi Formülüne dönüştürmek?


3

Soru: Excel'de bir formülü bir formüle dönüştürmek nasıl mümkün olabilir? dizi formülü , bir kısayol tuşu kullanmadan mı?

Normal formül

Normal Formula (and result)

Dizi Formülü

Array Formula (and result)


1
Bu soruyu gerçekten beğendim. Microsoft bu özel açıdan tutarsız. Her fonksiyon bir şekilde menü üzerinden çalıştırılabilir - bunun dışında
nixda

@ nixda =max(len) Özellikle?
Raystafarian

Hayır, @ Raystafarian, normal bir formülden bir dizi formülüne dönüşüm anlamına gelir.
David Michael Gregg

Yanıtlar:


4

Excel'de, dizileri oluşturmanıza / kullanmanıza izin veren bir dizi yerel formül vardır.

SUMPRODUCT()
INDEX()
OFFSET()    
SUMIFS()
COUNTIFS()
AVERAGEIFS()

Bu yerel formülleri iyi tanımak, çoğu durumda CSE dizi formüllerinden kaçınmanıza olanak sağlar (amacınız buysa)

Örneğin, numaralandırılmış aralıklar için bunu deneyin:

=LEN(MAX(INDEX(C2:C14,,1)))

Ayrıca, aşağıdaki tartışmaların bir sonucu olarak, bu formül tüm numaralandırılmış ve numaralandırılmamış / karışık aralıkları için çalışacaktır:

=MAX(INDEX(LEN(C2:C14),,1))

Bunu nasıl ayarlayabilirsin =max(len)?
Raystafarian

@Raystafarian, gönderime bir örnek ekledim
CallumDA

Bu, maksimum sayının uzunluğunu, soru ise listedeki öğelerin en uzun uzunluğunu alıyor. Bunu tersine çevirmek =max(len(index... aynı sonucu vermiyor gibi görünüyor. Eleştirmiyor, +1
Raystafarian

1
İlginç bir şekilde, formülü böyle yazabilirsin. =MAX(INDEX(LEN(C2:C14),,1)) bu numara olmayan listeleri ele alacaktır
CallumDA

1
Bunu cevaba eklemelisin, bu oldukça meraklı. Ve sayısız VE karma listelerle çalışır!
Raystafarian

1

Bu sınırlama için bir çözüm, küçük bir VBA Sub oluşturmak ve istediğiniz bir klavye kısayoluna atamaktır.

Bu, seçilen aralığı bir dizi formülüne dönüştürecektir.

Sub ConvertToArrayFormula()
    Dim rng As Range
    Dim arr As Range
    Set rng = Selection
    For Each arr In rng.Areas
        arr.FormulaArray = arr.Cells(1, 1).Formula
    Next
End Sub

Genel olarak iyi düşündüm, ancak OP'm başlığına rağmen, sorumu "kısayol tuşu kullanmadan mı" olarak açıkladım. Bir kısayol tuşunu bir başkasıyla değiştirmek, hedefi yendi. Şimdi, eğer bana bu Sub'u araç çubuğundaki bir düğmeye nasıl atayacağınızı gösterebilirseniz, bu tam olarak aradığım şey!
David Michael Gregg

@ MyPetOcean, formülü bir seçenek değil ayarlıyordu? Kısayol tuşunu kullanmadan neden girmeniz gerektiğini açıklamıyorsunuz (Ctrl + Shift + Enter hakkında konuştuğunuz "kısayol tuşu" ile sanırım)
CallumDA

Yani kaçınmak istiyorum herhangi kısayol. İlk gerekçem, meraklı olmayan kullanıcılar için uzun vadeli basitlik (ve hatırlanabilirlik). İkincisi, orada sadece basit gerektiğini Bunu yapmanın başka bir yolu olmak. Başka hangi büyük yazılımın, her şeyin kısayol tuşuyla erişilebildiği önemli özellikleri vardır?
David Michael Gregg

0

Cevaplardan biri, hem Aralık hem de Formül için İsimler kullanarak çözümlerinizi geliştirmektir.

Bu nedenle, formülünüzün görünümü = c2: C14 için 'v' tanımlanarak iyileştirilebilir. = MAX (LEN (v)) formülünün hala girilen diziye ihtiyacı vardır, ancak = n (LEN (v) 'e başvurmak için' n 'tanımlarsanız, dizi hesaplaması adlandırılmış bir formülün varsayılan davranışı olarak yapılır. Bu nedenle = MAX (n) CSE girişi kullanmadan çalışır.


1
Ad aralıklarını kullanmayı bilmeyen insanlar için, nasıl yapılacağına basit bir örnek eklemek için cevabınızı biraz genişletmeniz yararlı olacaktır.
fixer1234
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.