2016-12-24 25 views
0

Googleシートのスプレッドシートで作業しています。特定の値を検索する範囲の基準を持つ数式

私は今後のパスファインダーゲーム用のキャラクターシートを作成しています。現在、フィートページを作成中です。私は、Col Aが私が偉業を得られるレベル、Col Bが偉業の名前、Col Cが偉業のための前提条件、Col Dが私に言う式を作成する場所であるように、すべての要件が満たされている場合

レベル|名前|前提条件|会った?

1 |ドッジ|なし

1 |モビリティ|ドッジ|式

2 |スプリングアタック|モビリティ|式

3 |旋風アタック|スプリングアタック|式

私がしようとしているのは、何らかのルックアップを作成することです。私はレベルの範囲(Col A)を自分のキャラクターレベルに基づいて制限したい(Z3をセル参照として使用できるようにする)。だから私がレベル2であれば、レベル2以下の偉業しかチェックしません。次に、功績名が縮小Col Bにリストされていることを確認する必要があります。

ルックアップよりも優れた方法があれば教えてください。

レベルが1に設定されていると仮定すると、Spring Attackの式は真の文を生成し、Whirlwind攻撃の式は偽を生成します。なぜなら、春の攻撃はレベル2まで行われず、レベル1私のレベルが2に変わると、旋風は真実を読むはずです。

+0

あなたのレベルが2のときに旋風は "真"と読み替えるのはなぜですか?あなたの例ではそのレベルは3です。 – FTP

+0

これを実行するための要件が​​満たされているため、私は物事を簡略化したので、他の要件は示されていませんが、例では基本攻撃ボーナスは+ 4(4以上)、春攻撃、モビリティ、ドッジが必要です。これは、偉業のための前提条件が満たされただけであり、功績が取られたわけではありません。 – Fering

+0

よろしくお願いします。 TrueまたはFalseを表示するそれぞれの偉業のための別の公式を持つように見えます。もしそうなら、私はルックアップのようなものが必要な理由は分かりません。 D4の式は、関連するレベルのセルA4を参照し、計算に使用します。 – FTP

答えて

1

関連するGoogleスプレッドシートの数式はfilterです。例えば、

=filter(B2:B, A2:A <= 2) 

カラムA(レベル)に対応するエントリが最大で2

一つであり、列B(特技名)からのエントリのリストを返すは、例えば

ために、複数のフィルタを適用することができ
=filter(B2:B, A2:A <= 2, C2:C = "string") 

さらに、Cのエントリは「文字列」である必要があります。

一致がない場合、filterはN/Aを返します。マッチとFalseが他あった場合

=not(isna(filter(B2:B, A2:A <= 2, C2:C = "string"))) 

がTrueである:これは、条件を満たしている少なくとも一つのセルを見つけることを前提真/偽の値を生成するために使用することができます。

+0

私は以前にフィルタを使用していないし、私は必要なもののほとんどを行うようだ。しかし、フィートネームが見つからないときはNAを投げる。 – Fering

+0

そして、Iferrorはその問題を世話してくれました。ありがとうございました。 – Fering

関連する問題