2016-03-24 4 views
0

私は希望する月に個人支出のサブカテゴリの合計年を取得しようとしています。 stackoverflowを研究した後、私の必要条件に見合った公式を見つけました。数式評価中に1行下に目的の領域を移動させることができました。私は正しい結果を与えているアドホックベースでヒットとトライアルで数式を修正しました。私にとっては、最初に選んだ式はきわめて適切なものでした。私は以下のサンプルデータシートと、元の式と修正された式の評価ステップを示しました。誰かが、最初に選んだ公式でなぜそれが間違っていたのか、またその修正がその問題の解決にどのように役立ったのかについて、特にオフセット部分について説明することができましたか?どういうわけか私はこの問題を概念的に明確にすることができません。オフセット オフセット式ロジックの明瞭度

formula_evaluation_steps

Personal_Accounts evaluated with formula A Personal_Accounts evaluated with modified formula

サンプルデータファイル

Personal_Accounts evaluated with formula A

Personal_Accounts evaluated with modified formula

答えて

3

を指定することで、作品のオフセット:あなたはこの例では(A1を相殺する

をセルあなたから)をその位置から移動する方法を多くの行と列を指定して、どのように背が高く、幅を広げるために幅広い。

下に移動する行の数:この場合、行の数はMatch()で決まります。 Match()ここではA1:A9の範囲の行数を返します。値はSSです。答えは5です。現在オフセットは範囲A1 + 5行を参照しています。A6

移動する列の数:ここで1列移動します。面白いビジネスはありません。ここでCOUNTIFS()を範囲A2:A9で発見された回数SSの数を返すために使用されています。新しい範囲がB6

行数がその開始点からの範囲に含めることです。答えは3です。したがって、範囲はB6から始まり、範囲内に3行下が含まれます。本質的にB6:B8

は最後に、範囲に含める列の数:あなたの範囲は今B6:H8

OFfseT()範囲に戻り、Sum

それをまとめているので、それは、あなたがセルA13に持っているものだから
は、ここでは、7です

MATCH()の結果から1を減算し、その式を正しく移動してB5:H7を生成します。 MATCH()の検索範囲をA2:A9に変更することもできます。これは、可読性の観点からはおそらく意味があります。

最後に、複数の条件を評価していないため、COUNTIFS()COUNTIF()になります。

私は最初からこれを書かなければならなかったのであれば、私が使用します。Match()結果上の任意の数学なしで、あなたに同じ正しい答えを得るでしょう

=Sum(Offset(A1, Match(A2:A9, A12, 0), 1, Countif(A2:A9, A12), A13) 

+0

説明し、正しいアプローチを明確にし、示唆してくれてありがとう。 – skkakkar

1

は、2つの主要な機能を有している - のいずれかの行の指定された数を使用してセル(ターゲット)に移動すると開始点からの列、または特定の範囲を選択するターゲットセルで開始する行数と列数を指定します。あなたのオリジナルの式には、この部分

MATCH(A12;A1:A9;0) 

マッチしたセルに問題があり、それはA1 + 5行で開始しているため、インクルードは5行A6で終わるダウンの動きを相殺したがって、第五です。次に、1列をB6に移動し、合計3行と7列= B6:H8の範囲を作成します。したがって、マッチ関数の結果から1を引いて、右の行に終わる必要があります。 SS値が範囲A1:A9(A1内)の最初の行にある場合、オフセットはA1から1行下にA2からA2に移動しますが、移動することはまったくありません。

+0

問題を明確にしてくれてありがとうございます。オフセット論理の概念をきちんと説明しました。 – skkakkar

0

基本的なオフセット式の定義を見てください。

Offest(参照セル、REFERENCE、リファレンスFROM列数を移動することを移動する行数を、返す方法を多くの列、行数を返すために)あなたがA1にご参照セルを設定している場合ので、

をA2で結果を返す場合は、参照セルから1行下に移動する必要があります。

OFFSET($ A $ 1,1,0,1,1)今、私たちは情報がであるものの位置、あなたの方程式の一致部分、MATCHリターンを見れば。私たちが知りたいのであれば

A1:A100の範囲のA2の情報の一致位置、A2の情報が列の2番目の位置にあるとMatchから通知されます。より正確には、2の値を返します。

ここで、2番目の位置に到達するまでのオフセットの距離を指定する必要があります。基準点が最初の行であるA1なので、実際には2行下に移動して2番目の位置に移動しないようにしてください。その結果、2行目に行くためには1行下に行きたいと思っています。あなたはマッチを行うことによって正しく行ったあなたのマッチ結果から1を少なくしたい)-1

関連する問題