Google Dokümanlar e-tablosunda basit bir ayar işlemi nasıl yapılır?


10

Hücrelerde bazı isimlerim olduğunu B1:B3ve içindeki tüm adların tam bir listesini bulduğumu varsayalım , A1:A4içinde A1:A4görünmeyen bir ad listesi oluşturmak mümkün B1:B3mü?

Örneğin Hücreler A1:A4"A", "B", "C", "D", eğer B1:B3"A", "C", "D" içeriyorsa "B" almak istiyorum.

İşlev listesine baktım ama nasıl yapılacağını anlayamadım.

Güncelleme : Lance'in yardımıyla geldiğim formül:

FILTER(A1:A4, A1:A4<>B1, A1:A4<>B2, A1:A4<>B3)

Bu doğru sonucu verir, ancak hala bir sorunum var. Sorun şu ki hücrelerim B1:Bxgenişleyebilir. Bir spor takımını yönetiyorum ve kişilerin göndermek için bir Google Dokümanlar formu kullanıyorum, adlarını bir seçim listesinden seçiyorlar ve "Evet" (oynayabilirim) veya "Hayır" (dışarıdayım) radyo düğmesini seçiyorlar. Burada elde etmek istediğim, cevap vermeyenleri e-tablomda görüntülemek. Amaç, her yeni gönderimden sonra bu listeyi otomatik olarak güncellemektir. Maalesef e-tabloya yeni satırlar doldurulduğunda formül berbat olur. Bunun için bir çözüm olup olmadığından emin değilim.

Güncelleme 2 : Bir çözüm buldum. Önce hücreleri B1:Bxbaşka bir bölgeye kopyaladım C1:Cx, sonra yukarıdaki formülü kullandım ama karşı C1:Cx. Şimdi B1:Bxgenişliyor, formül hala geçerli.


Genişleyen sorunun çözümü adlandırılmış bir aralık kullanmaktır. Yine de, filtreyi tam olarak almak biraz zaman alacaktır.
Lance Roberts

@Lance, bir geçici çözüm buldum ve yazımı tekrar güncelledim. Teşekkürler.
grokus

1
Harika bir soru, bu cevabı kendim ararken buldum. Geçici çözümünüz oldukça iyi, ama sonunda tam olarak aradığınızı buldum. Cevabımı aşağıda görebilirsiniz.
Anthony DiSanti

Yanıtlar:


5

WOW, size tam bir çözüm getirecektim, Google Dokümanlar çok sinir bozucu. Script-loop City.

Bunu, FILTER çalışma sayfası işleviyle yapabilirsiniz; arrayCondition_1, kopyalanmamış her satır için gerçek bir değer veren işlevlerin bir formülüdür. MAÇ işlevinin kullanılamadığını görebildim.


1
Google Dokümanlar ile çalışırken Chrome kullanmanın çok daha iyi olduğunu gördüm.
grokus

Bugün benim için çılgınca, ama hatırlayabiliyorsam önümüzdeki hafta bu konuda bir çatlak alacağım (eğer cevap o zaman bulunamazsa).
Lance Roberts

sorun değil, istediğim sonuçları elde etmek için FİLTRE kullanabildim. Teşekkürler.
grokus

@grokus, harika, gelecekteki okuyucu referansı için kullandığınız formülü göndermelisiniz.
Lance Roberts

Orijinal yazımı güncelledim.
grokus

4
=FILTER(A:A, NOT(COUNTIF(B:B, A:A)))

COUNTIFsütundaki her oyuncunun sütunda kaç kez Agöründüğünü sayar ve sayı Bdizisini döndürür.

NOT sayıları boole değerlerine (doğru veya yanlış) verir ve sonra tersini alır.

FILTERBsütun yanıt listesinde görünen oyuncuları kaldırır .

Buradaki hile NOTsayıları booleanlara çeviriyor. Bir oyuncu cevap vermediyse, cevaplar listesinde 0 kez görünür. Yanıt verdiyse, 1 veya daha fazla kez görünürler (belki anketi ikinci kez göndererek yanıtlarını değiştirmeye çalışan bir oyuncu). 0 oyuncu Falsekadrosu ve diğer tüm numaralar True. Yani haritaya cevap veren Trueve haritaya henüz cevap vermeyen oyuncular False. NOTsonra tersini alır, henüz cevap vermeyen oyuncuların maskesini verir.

Bu çözüm, boş satırlar veya yinelenen gönderimler içerebilecek artan gönderimler listesini desteklemektedir. Soruda açıklanan belirli aralığı sınırlamak için şunu kullanın:=FILTER(A1:A4, NOT(COUNTIF(B:B,A1:A4)))


dahi 20charlimit
Fadeway

0

İşte bunun nasıl kolayca yapılabileceğini gösteren bir e-tablo:

Google E-Tablolar'da İşlemleri Ayarlama

Birlik ={setA; setB}

Fark: =filter(setA, iferror(MATCH(setA, setB, false)))

Kavşak =filter(setA; MATCH(setA, setB, false))

Açıklama setAvesetB adlandırılabilir aralıklar veya normal aralık gösterimi kullanabilirsiniz. Adlandırılmış aralıklar bunu daha net hale getiriyor.

Birlik, her iki aralığı da birleştirerek yapılan yeni bir alandır.

Kavşak (bir sonraki en kolay) setA,setB onlar terk ettikleri ve bu tarafından Seta filtreleme.

Fark benzerdir, ancak setAyalnızca dizini bulmanın setBbulunmadığı üyeleri seçmek için filtreler .

Ekstra kredi

Yinelenen eliminasyon ile birleşme sadece setA + (setB-setA) , yani yukarıdaki

={setA;filter(setB, iserror(MATCH(setB,setA,false)))}
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.