Bir dizi formülü kullanabiliyorsanız, bunun standart bir yaklaşımı vardır.
Benim düşüncem, cevabı tek bir hücrede görmek istediğinizdir, bu yüzden dizi formüllerinden kaçınmak için özel bir neden olmamalıdır. (Çok hücreli dizi formülleri için ortak bir neden, formülün ve ilgili sorunların değiştirilmesindeki zorluktur. Dizi dizisi tarafından alınan bir blok, birine birleştirilen bir hücre bloğu gibi çok fazla hareket edebilir.)
(Bu sadece çok uzun, bu yüzden adımları yeterince açıklayabiliyorum, böylece göstermem gereken bir teensy detayından çıldırmıyorsunuz.)
Eğer öyleyse, işte kavram:
Son formül yalnızca Control-Shift-Enter ("CSE") kullanılarak girilen bir dizi formülü değil, aynı zamanda bölümlerini diziler halinde oluşturursunuz.
Bir dizi (muhtemelen) toplamak istediğiniz değerleri içerir (bu durumda B10: M76). İkinci dizi, istenen metnin bulunduğu aralık olacak ve üçüncü dizi boş / boş / boş bir koşul için test edilen aralık olacaktır.
İlk dizinin amacı, oyuna eklenecek değerleri koymaktır. İkinci ve üçüncü sıraların amaçları aynıdır: Gerekli testleri yapmak ve her test için mantıksal bir hal almak. Mantıksal değer? Başarılı veya başarısız olan testlere bağlı olarak, DOĞRU veya YANLIŞ döndürürsünüz.
Eğer üzerine bir matematik işlemi yaparsanız, Excel bu mantıksal değerleri 1 ve 0 olarak kabul edecektir. Öyleyse, mutlu metin sütunu, bir matematik yaparsanız {1; 0; 1; 1; 0; ... vb. Gibi davranacak olan {TRUE; FALSE; TRUE; TRUE; FALSE; ... etc. Sonuçta işlem. Genellikle bunu 1 ile çarparak tek bir diziye yapacaksınız. Burada çözüme yönelik daha karmaşık bir yola ihtiyacınız var ve bir "* 1" getirmek yerine, sadece diğer iki diziyi kullanacaksınız. Üçüncü dizi, hücreleri null / blank / empty durumu için sınama ve aynı türde TRUE ve FALSE dizisini almada size benzer.
Bu nedenle, ilk dizi, toplama değerlerinin aralığını bir diziye yerleştirir ve ikinci ve üçüncü diziler, istediğiniz iki testin DOĞRU ve YANLIŞ sonuçlarıdır. Testlerden herhangi biri başarısız olursa, diğer test sonucunu 0 ile çarpacaksınız, sonuçta 0 ile sonuçlanan toplamı çarpmak. Bu nedenle, testlerden herhangi biri başarısız olursa, o satırın toplama değeri 0 ile çarpılır ve SUM () işlevi tarafından 0 eklenerek sonuçlanır. Bunu hepsini saracaksınız. Her iki test de başarılı olursa, bu satırın toplama değeri 1 ile çarpılır ve Excel'in SUM () işlevine sunduğu son dizide sona erer.
Bu şekilde SUM (), bir yoldan veya diğerinden başarısız olan satırlar için hiçbir şey eklemez, bu nedenle yalnızca testleri başarılı olan değerler sonuçta görünür.
İstediğin şey bu.
Bu durumda, ilk sınamayı, başarılı olursa bir DOĞRU üretecek şekilde yazmanız gerekir. Gibi bir şey:
(B1:B6="City of Tampa")
ve ikinci testin yazılması gerekir, bu nedenle eğer test başarısız olursa 1 üretir, bu nedenle konuşmak için "eşleşmeyen" bir tür olarak yazın veya "pozitif" bir şekilde yazın, ancak bunu bir NOT () konumuna getirin () fonksiyon:
(C1:C6<>"")
(NOT(C1:C6=""))
(Hangi yaklaşım size en iyisi olursa olsun ve gelecekteki e-tablonuz üzerinde çalışmanız için size ihbarda bulunacaktır. Buradaki herkes farklıdır ve gözetmen bazen taleplerini açıklar, böylece denetleyebilir ve geçerli cevaplar vermesi için rahat olabilirler.)
İlk diziniz oldukça basit, yalnızca kendi başınıza toplayabileceğiniz değer aralığı:
A1:A6
(Test bölümlerini (ikinci ve üçüncü diziler) parantez içine almanız gerekir, ancak ilk dizide bunu yapmanız gerekmez. Ancak isterseniz yapabilirsiniz.)
Sonra hepsini bir araya getirin ve SUM () işleviyle sarın:
{=SUM( A1:A6 * (B1:B6="City of Tampa") * (C1:C6<>"") )}
("CSE" ye basmak, elbette yukarıdakileri sarmalayan {} ekleyecektir.)
Bu yaklaşımı sadece özetleme cephesinde bir sürü varyasyonla değil, diğer birçok fonksiyonla da kullanabilirsiniz. Aslında, birkaçı son formülün tamamını "CSE" ile girmeyi gerektirmez: ara çalışmasında dizileri kullanmasına rağmen tamamen normal bir formül olabilir. Eğer yukarıdakileri uygularsanız, bu yaklaşımı karşılaşacağınız birçok soruna uygulayabilirsiniz.
Sorununuzu tam olarak yeniden yaratmadım (bu nedenle örneklerdeki basit aralıklarım) ancak üzerinde çalışacak çok sütunlu ve sıralı bir aralık biraz fazladan çalışma gerektirir. Çok satırlı VEYA çok sütun aralığı, tek satırlı bir matris gibi, hala tek satırlı bir dizidir. satırlar yapmak VE sütunlar, Excel'e (olduğu gibi) 3x4 matris gibi birden çok satır içeren dizileri verir. Hata alırsanız, "gevşetmeniz" gerekir ve Excel'i söz konusu aralıkları tek satır dizileri olarak görmeye zorlamanız gerekir. Örneğin, tek sütunları (veya yazmak daha kolaysa satırları) tek bir aralığa çekmek için Adlandırılmış Aralıkları kullanın. Başka numaralar da var. Birincisi, bir sütunda bir hesaplama kümesi yapmak için formülü yazmak ve ikinci bir sütunda ikinci bir hesaplamalar kümesine eklemek. Her sütun kümesi için aynı şeyden yalnızca birkaç set değiştirildi. Ama genellikle çok fazla sorun yaşamadan birlikte kaldırırsınız, sadece bir miktar dirsek yağı.
Son olarak, bazı formüllerin dizileri kullandığını ancak CSE tarafından girilmiş formüllerin kendilerinin olmasına gerek olmadığını söyledim. Ancak, garip bir şekilde, her seferinde bunun neden gerçek bir şekilde anlaşılabilir hale geldiğini anlayana kadar, Homer "Doh!" an, bunu yapmak CSE'nin girdiği aynı şeyden farklı bir sonuç verebilir. Öyleyse, girilen CSE sürümü her zaman doğru sürüm olacaktır, ancak her seferinde doğrulamanız gerekir.