4

現在、次の式を使用しています

=SUM(INDIRECT("'Net "&($A$2)&" "&RIGHT($A48,2)&"'!C4:C21"))

C4:C21それは完璧に機能しますが、範囲部分 ( ) を動的にしようとしています。

式が参照しているの$A$2は、誰かが入力して現在「May」と言っているものです。数式が参照している $A48 は、単に年の下 2 桁を取り出しているだけです。

これらはファイルの断片です

重要なタブは全部で 6 つあります。特定の月の前年度の売上を合計する 4 つのタブがあります。つまり、5 月 11 日ネット、10 年 5 月ネット、2009 年 5 月ネット、2008 年 5 月ネットがあります。これらは、間接式が検出するタブです。

最後の 2 つのタブには、この数式が存在するタブ (Net May 12) と、範囲の基になる必要があるタブ (Cust May 12) が含まれます。[Cust May 12] タブで、列 A は日、列 B は曜日、列 C は売上データです。誰かが毎日来店し、その日の売り上げを入力します。例として、現在、2012 年 5 月 1 日から 2012 年 5 月 18 日までの売上データがあります。列 C の 2012 年 5 月 19 日から 2012 年 5 月 31 日まではすべて空白です。現在存在する販売データは にありC4:C21C22:C34空白になっています。前年の売上と今年の売上を比較しているため、これらは比較可能でなければなりません。そのため、この式はC4:C21前年の売上のすべてにのみ使用されます。

私は、CountA やいくつかのオフセットを含むいくつかのことを試みて助けようとしましたが、以前のすべての販売数式の範囲を動的にする解決策を見つけることができませんでした. C4:C22誰かが 5 月 12 日の [Cust] タブに翌日の売上データを入力したときに、過去のすべての年について単純にインクリメントする数式が必要です。

4

1 に答える 1

5

あなたの質問は完全に明確ではありませんが、次のようなものが必要なようです:

=SUM(OFFSET(INDIRECT("'Net "&($A$2)&" "&RIGHT($A48,2)&"'!C4:C4"),0,0,COUNTA('Cust May 12'!$C$4:$C$34)))

ただし、たとえば年、月、日、売上などの列を含む 1 つのワークシートだけに格納するようにデータを再構築することを検討することをお勧めします。次に、「2011 年の月初から 5 月までの売上高は?」などの質問には、次のように (特に Excel 2007 で追加された SUMIFS 関数を使用して) 回答しやすくなります。

=SUMIFS(<Sales column>,<Year column>,2011,<Month column>,"May",<Date column>,"<="&DAY(NOW()))
于 2012-05-23T17:48:14.177 に答える