[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『複数条件の抽出について』(レオン)
【シート名】貼付
A列 B列 C列 D列
1 場所 日付 パターン 6:30
2 東京 10/1 A 25
3 東京 10/1 B
4 東京 10/1 C
5 東京 10/2 A
6 東京 10/2 B
【シート名】データ
A列 B列 C列
1 10/1 空白 6:30
2 東京 A ?
上記の様に、貼り付けシートに貼り付けたらデータの「?」部分に"25"と表記するようにしたいんですが、上手く数式が出来ません。教えて頂きたいです。
【条件】
1.場所が"東京"
2.日付が"データA列の1行"
3.パターンが"A"
4.時間が"6:30"
この4つが条件になるように数式を組みたいです。
宜しくお願い致します。
< 使用 Excel:Excel2013、使用 OS:Windows10 >
>4.時間が"6:30" >"25"と表記する いまいち?な部分も有るけど SUMIFS関数で出来そうな・・・?
( はまちゃん) 2020/10/03(土) 09:48
>SUMIFSだと合計数なので、
例示では1件しかヒットしてないようですが 合計ではまずいのですか? 何件かあるんでしょうか? (コナミ) 2020/10/03(土) 15:49
(GOTO) 2020/10/03(土) 16:10
東京・10/1・A・6:30の条件に当てはまるデータは複数あるの? 1つならSUMIFSなのでは? それとも、東京・10/1・Aの条件で6:30・7:00等の条件を 「検索」するのかな?
( はまちゃん) 2020/10/03(土) 20:21
>この場合はSUMIFSでできるんでしょうか? 重複がなければ可能です。 他の回答者にお任せします。 数字(これだと25)はなにを意味するの?他の文字が入るわけないですよね。
(GOTO) 2020/10/03(土) 21:53
シート名「貼付」・・・仮にこのようなレイアウトの場合です。
[A] [B] [C] [D] [E] [F] [1] 場所 日付 パターン 6:30 7:00 7:30 [2] 東京 10月1日 A 25 [3] 東京 10月1日 B 40 [4] 東京 10月1日 C [5] 東京 10月2日 A 50 [6] 東京 10月2日 B 60 [7] 千葉 10月1日 A 30
シート名「データ」 [A] [B] [C] [1] 10月1日 6:30 [2] 東京 A 25
「データ」シートのC2に =SUMIFS(OFFSET(貼付!C1,1,MATCH(C1,貼付!D1:F1,0),9),貼付!A2:A10,A2,貼付!B2:B10,A1,貼付!C2:C10,B2)
とするとこのようになります。 条件に一致するデータがない場合は0が表示されます。 「データ」でC2以外のところを変更して希望通りのデータが表示されることを確認してください。 (tora) 2020/10/03(土) 23:06
>6:30以降E列7:00などに30分ごと増えます。 これはどの列まで(何時何分まで)続くんですか? そこまで書いてください。
Z列(17:30)までだとして 揮発性関数(OFFSET)を使わないやり方
C2 =SUMIFS(INDEX(貼付!D:Z,0,($C$1-"6:30")*48+1),貼付!A:A,A2,貼付!B:B,$A$1,貼付!C:C,B2) または C2 =SUMIFS(INDEX(貼付!D:Z,0,MATCH($C$1,貼付!$D$1:$Z$1,0)),貼付!A:A,A2,貼付!B:B,$A$1,貼付!C:C,B2)
2つ目の式について 貼付シート、D1セルからの時刻をどうやって入力したのか知りませんが 演算誤差は発生しないということを前提にしています。
以上 (笑) 2020/10/04(日) 11:37
情報をお伝えすると、6:30から23:30の15分間隔です。
すみません。情報遅くなりました。
(レオン) 2020/10/04(日) 19:56
>6:30から23:30の15分間隔です。 15分間隔? 30分ごとって言ってませんでしたか? D列からBT列ってこと?
C2 =SUMIFS(INDEX(貼付!D:BT,0,($C$1-"6:30")*96+1),貼付!A:A,A2,貼付!B:B,$A$1,貼付!C:C,B2)
■先に回答した2つ目の式について 貼付シートの 6:30から23:30 はどうやって入力したんですか? たぶん2つ目の式は、範囲を合わせてもほとんどが #N/Aエラーになるんじゃないですかね。
その場合は・・・
貼付シート D1セルに 6:30 を手入力 E1 =TEXT(D1+"0:15","h:mm")*1 表示形式「時刻」 E1をBT1までコピー
そうしておけば ↓ でも C2 =SUMIFS(INDEX(貼付!D:BT,0,MATCH($C$1,貼付!$D$1:$BT$1,0)),貼付!A:A,A2,貼付!B:B,$A$1,貼付!C:C,B2)
ほかに最初と話が違うところはないでしょうね。
以上 (笑) 2020/10/04(日) 23:07
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.