2017-12-06 12 views
1

インデックス(match())関数を使用して、列ヘッダーの名前に基づいて値を返します。しかし、私は最近、列見出しが自分のデータに4回表示されることを知りました。しかし、人口は1つしかなく、他の人は常に空になります。インデックス(match())または最初のnull /空の値を返すためのルックアップ

=(isblank(...)# do stuff)私は、SQL coalesque()のような、最初の非ヌル/空値を返すようにGSheetsに指示するより洗練された方法があるかどうか疑問に思っていました。

はありますか?

現在の式は次のようになります。

=index('Form Responses 1'!$A$2:$DY,match($A2,'Form Responses 1'!$A$2:$A,0),match(I$1,'Form Responses 1'!$A$1:$DY$1,0)) 

しかし、この作品は、問題の一部です:

match(I$1,'Form Responses 1'!$A$1:$DY$1,0) 

I $ 1の範囲Form Responses 1'!$A$1:$DY$1で4回表示されますので、これはです。私が望むのは、index()の機能に入れ子になったときに空のセルを返さないものです。

答えて

1

私は、すべてのデータが1枚のシートにある場合、もっと簡単なケースを作っています。

enter image description here

式は:

=QUERY(TRANSPOSE({A1:E1;FILTER(A2:E8,A2:A8 = 2)}), "select Col2 where Col2 is not null and Col1 = 'foo' limit 1")


  • 2は、(あなたのサンプル中$A2)行によって基準
  • テキストfooがカラムによって基準である(交換でありますそれはで)それは

    • {A1:E1; filter }仕組み

    は1列

  • TRANSPOSEにヘッダと目的の行を取得することですクエリ
  • where Col2 is not nullを使用することで、空のセルを取り除くことです
  • limit 1は、select first 1
関連する問題