2017-12-11 13 views
0

私は、Raw Dataと呼ばれるシートの列のすべてのセルを合計する必要があります。しかし、いくつかの条件が存在する場合のみ。ExcelのSumIf

  1. 生データ列Bの値が現在のセルからのオフセット
  2. の値と一致するRAWデータ列Cの日付の月未満又はH2
  3. 年に等しいですRAWデータ列の日付Cここ

以下H2に等しく、Iは、これまでに組み立てられた式である:

=SUMIFS('Raw Data'!$D:$D,'Raw Data'!$B:$B,OFFSET(INDIRECT(ADDRESS(ROW(), COLUMN())),0,-4),MONTH('Raw Data'!$C:$C),<=MONTH($H$2),YEAR('Raw Data'!$C:$C),<=YEAR($H$2)) 

それは単純な構文エラーかもしれませんが、私は思っていません。私は一般的な "式に問題があります"というエラーが表示され続けます。

助けを得ることができますか?

+0

これは、レンジ 'YEAR(「生データ」$のC!:$のC)にすることはできませんあなたは基本的に言っている –

+0

、'その場合、列Cの日付:Cは少ないし、または今月に等しい合計、正しいのですか? –

+0

正しい。 Month()とYear()がRangeで問題を投げるかどうか疑問に思っていました。いい代替えは何ですか? – user1971240

答えて

1

SUMIFSの場合、範囲は配列ではないと予想されますので、MONTH('Raw Data'!$C:$C)YEAR('Raw Data'!$C:$C)は機能しません。

また

あなたが引用符を使用し、基準を連結しなければならないので、他の人が列を期待している。この場合、"<=" & value

私たちは来月の1日未満のすべてたい:

"<" & EOMONTH($H$2,0)+1 

使用をこの:

=SUMIFS('Raw Data'!$D:$D,'Raw Data'!$B:$B,OFFSET(INDIRECT(ADDRESS(ROW(), COLUMN())),0,-4),'Raw Data'!$C:$C,"<" & EOMONTH($H$2,0)+1) 
+0

これは、EOMONTHを使用して、今年の基準を満たしていますか? – user1971240

+0

はい、例えば 'EOMONTH(TODAY()、0)+ 1'は' 1/1/2018'を返し、それよりも日付が小さいものはすべて返されます。 –

+0

恐ろしい!また、解答に行く説明に感謝します。これは非常に役に立ちました。 – user1971240