『お昼の注文表を作成したい』(れ!)
こんばんは
お昼の集計表を作成しています。
お弁当を持参する人は弁当、弁当を買った人はその回数を表示したいと思っています。
DATAシート(クラス順に並んでいます)
A B C 1 弁当 名前 回数 2 出前 花子 20 3 弁当 太郎 4 出前 一郎 23
集計シート(クラス関係なく生まれの早い人順でならんでます)
A B
1 名前 回数
2 花子 (20)
3 一郎 (23)
4 太郎 (弁当)
集計シートの回数の所を数式で表示したいのですが
vlookup関数で一致したら3番目を表示させることはできるのですが
イフ関数を使いこなせなくて投稿します。
名前が一致して回数が表示されていれば数字を
名前が一致して弁当なら弁当と表示するような関数はどうしたら
良いのでしょうか
< 使用 Excel:Microsoft365、使用 OS:Windows10 >
注文表ということは、同じ人でもその日によって 「出前」になったり「弁当」になったりするってことでしょ?
>名前が一致して回数が表示されていれば数字を A列が「出前」なら必ず回数が表示されてるんですか? 「弁当」でも回数が表示されてる場合があるんですよね?
とりあえず、VLOOKUPではなく XLOOKUP で
・DATAシートは Sheet1 ・どちらのシートも2行目から50行目に名前が入力されている
B2 =LET(a,Sheet1!A2:A50,c,Sheet1!C2:C50,XLOOKUP(A2:A50,Sheet1!B2:B50,IF(a="弁当",a,c),""))
※B3:B50は空白にしておくこと ※シート名、範囲は実際の表に合わせる
以上、参考まで (笑) 2023/09/26(火) 20:09:13
|[A] |[B] |[C] [1] |弁当|名前|回数 [2] |出前|花子| 20 [3] |弁当|太郎| [4] |出前|一郎| 23
集計シート
|[A] |[B] [1]|名前|回数 [2]|花子| 20 [3]|一郎| 23 [4]|太郎|弁当
B2=IF(VLOOKUP($A2,DATAシート!$B$2:$C$4,2,0)=0,"弁当",VLOOKUP($A2,DATAシート!$B$2:$C$4,2,0)) ※ 空白は 0 と見做される。
>vlookup関数で一致したら3番目を表示させることはできるのですが
弁当、名前は逆じゃないんですかね。
以上「イフ関数」でした。
(IT) 2023/09/26(火) 20:54:58
A列が「出前」なら必ず「1」以上の回数が入力されていて 「弁当」なら何も表示されていないのなら
B2 =SUMIF(Sheet1!B:B,A2:A50,Sheet1!C:C)
表示形式〜ユーザー定義 0;;"弁当"
参考まで (笑) 2023/09/26(火) 21:00:05
>A列が「出前」なら必ず「1」以上の回数が入力されていて >「弁当」なら何も表示されていないのなら
↑ だとして、回数が数式の結果なのか手入力なのか知りませんけど VLOOKUP で、かつ「弁当」を文字列にしたいのなら(表示形式ではなく)
B2 =IFERROR((VLOOKUP(A2:A50,Sheet1!B:C,2,FALSE)&"")*1,"弁当")
参考まで (笑) 2023/09/26(火) 21:47:34
1ヶ月分を各クラスから集めています。
それをまとめて誕生日順で並んでいる表に表示させています。
(愛妻?)弁当と決めた人は基本出前はとりません。
やむを得ず、出前をとることもあります。
出前業者へまとめて支払うので、月に何食分出前をとったのか
集計する表を作ろうとしています。
弁当の人が万が一出前を頼んだのなら数字が入ります。
集計表に間違えではないと確認するために、食べた人は回数を
愛妻弁当の人は弁当と表示させようと思いました。
ちなみに、表示させたいのは弁当の言葉ですがデータシートのA を表示させるように
したいです。例えば転校してしまった人は転校と入っているからです。
明日試してみますね。ありがとうございます。
look関数初めてみます。ブイルックアップとH LOOKアップは知ってました。
(れ!) 2023/09/26(火) 22:20:49
>ちなみに、表示させたいのは弁当の言葉ですがデータシートのA を表示させるように >したいです。例えば転校してしまった人は転校と入っているからです。
どこに「転校」と入ってるんですか? DATAシートのA列?
さらっと言ってますけど、どういう場合にどうなればいいのか 改めて説明した方がいいのでは?
一応・・・ ・DATAシートのC列に回数が入力されていたら、A列が何であろうとその回数を表示 ・回数が空白なら、A列の値を表示
・DATAシートは Sheet1 ・どちらのシートも2〜50行目に入力されている
B2 =LET(a,Sheet1!A2:A50,c,Sheet1!C2:C50,XLOOKUP(A2:A50,Sheet1!B2:B50,IF(c<>"",c,a),""))
>look関数初めてみます。 XLOOKUPです
以上 (笑) 2023/09/26(火) 23:19:13
頭の中でぽわんとしかイメージ出来てなかったですが、
ここの皆さんはパソコン数式脳が出来上がっているんですね(尊敬)
転校はA列に入ってます。
転校はあまり、重要ではないです。
お金いくら払うかなを確認するものなので、
転校と、表紙されている人は集計シートから名前を消さなくちゃ!って
確認するのに使います。
おっしゃる通り
DATAシートのCに数字が入っていたら優先で表示です。
Cに数字が入っていなくて、A 列が弁当だったら弁当と表示させたいです。
今日は外回りが多くて確認できなかってので、明日頑張って確認しますね。
皆さん🐜🐜🐜🐜🐜🐜🐜🐜🐜🐜ございます⭐︎ (ありがとう)
(れ!) 2023/09/27(水) 18:32:39
IT殿
ありがとうございます。
ここで質問するときに多少表を省略して記載したので
>vlookup関数で一致したら3番目を表示させることはできるのですが
弁当、名前は逆じゃないんですかね。
のご指摘 もっともです。
(れ!) 2023/09/28(木) 09:30:24
要するにどうしたいんですか?
>転校と、表紙されている人は集計シートから名前を消さなくちゃ!って >確認するのに使います。 A列が「弁当」だったら「弁当」、「転校」だったら「転校」と表示したいってこと?
IFERROR は使えるバージョンだとして
B2 =IFERROR((VLOOKUP(A2,Sheet1!B:C,2,FALSE)&"")*1,INDEX(Sheet1!A:A,MATCH(A2,Sheet1!B:B,0))) 下コピー
■念のため言っておくと・・・ A列が何であろうと ・回数が入力されていたらそれを表示 ・回数が空白なら「弁当」と表示 でいいのなら
>B2 =SUMIF(Sheet1!B:B,A2:A50,Sheet1!C:C) ↓ B2 =SUMIF(Sheet1!B:B,A2,Sheet1!C:C) ~~~~ 表示形式〜ユーザー定義 0;;"弁当"
または >B2 =IFERROR((VLOOKUP(A2:A50,Sheet1!B:C,2,FALSE)&"")*1,"弁当") ↓ B2 =IFERROR((VLOOKUP(A2,Sheet1!B:C,2,FALSE)&"")*1,"弁当") ~~~~ 表示形式「標準」
どちらも波線部に変更して下コピー
以上 (笑) 2023/09/28(木) 10:47:25 数式変更 11:23
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.