- ベストアンサー
Excel関数で複数条件検索して値があれば○
Wendy02の回答
- Wendy02
- ベストアンサー率57% (3570/6232)
回答に直接は答えていませんが、こちらのアイデアとして、一考してもよいかと思います。関数は関数としても、まず、シートを別々にするのは管理上良くないと思います。私が作るなら、最低でも、以下のようにすると思います。 A B C D 貸出日 コード 返却日 返却確認 1/1 AA 1/2 1/2 BB × 1/3 AA × 1/4 AC × 1/5 AD × 1/6 AE × D2 ~の数式 =IF(AND(B2<>"",C2="",TODAY()-A2>10),"×","") つまり、貸出日から、10日経ったら、× にする。 大事なのは、この後です。 フィルタオプションを使います。レイアウトは、もう少し工夫したほうがよいですが、簡易データベースにしました。例えば、AA を入れれば、返却確認がないものが出てきます。 F G H 貸出日 コード 返却日 <=40595 AA = 貸出日の数式 ="<="&TODAY() コード AA ←変更・入力するのはここだけ 返却日 ="=" -------- 手作業では面倒なので、ちょっとしたマクロを作りました。 Alt + F11 --> 挿入 -->標準モジュール 手入力は大変ですから、ボタンは、以下は、フォームのボタンにしましたので、標準モジュールです。 Sub ボタン1_Click() 'フィルタオプションのマクロ Dim rng As Range With ActiveSheet If .FilterMode = True Then .ShowAllData End If Set rng = .Range("A1", Cells(Rows.Count, 1).End(xlUp).Offset(, 3)) rng.AdvancedFilter _ Action:=xlFilterInPlace, _ CriteriaRange:=.Range("F1:H2"), _ Unique:=False If Application.Subtotal(3, rng.Columns(1).Offset(1)) = 0 Then MsgBox "該当データがありません。", vbInformation .ShowAllData End If End With End Sub Sub ボタン2_Click() '全画面表示 With ActiveSheet If .FilterMode = True Then .ShowAllData End If End With End Sub
関連するQ&A
- 複数の条件に値する1つの値を求めたい。
下記のような2つのSHEETがあり、【SHEET1】の2つの条件に値する数値を【SHEET2】より選ぶ関数を教えて下さい。 例えば、製品Aの品質○は【SHEET2】では3ですが、それを表す関数を 【SHEET1】の(在庫)?のところへ入れたいのです。 品質がその日によって変わるので、単にSHEETをリンクさせるのではなく、条件の付いた関数を入れたいのですが可能でしょうか? 宜しくお願い致します。 【SHEET1】 (製品) A B C D・・・ (品質) ○ × ○ ○ (在庫) ? ? ? ? 【SHEET2】 ○ × A 3 5 B 4 7 C 1 9
- ベストアンサー
- オフィス系ソフト
- Excelの関数について
Excelの貸出台帳を作成したいのですが、関数が全く分りません。 過去の貸出機器の記録も残したいのですが、個々が記録を入力すると入力を忘れてしまう可能性があるので、自動的にlogを残したいです。 (1)貸出台帳で使用者が入力する箇所は「E~I」で、「B~D」は固定です。 (2)貸出台帳「I」の返却日に使用者が日付を入力すると自動的に別シートの貸出記録の「B~H」に反映させたい。 (3)確認者が貸出記録の「I」確認項目に「○」を選択すると、貸出台帳「E~I」を自動で削除して、再度別の使用者が入力できるようになる。 このような管理がExcelで可能でしょうか。 全く同じでなくても、記録ミスを無くせるのなら、他の方法でもよいです。 あくまで、管理台帳は現状の貸出の有無で、貸出記録は過去の貸し出し状況の把握です。 こ よろしくお願いします。
- ベストアンサー
- その他MS Office製品
- EXCEL関数で値の範囲検索をしたい
EXCEL関数で値の範囲検索をしたい お世話になっております。 シートに下記の表があります。 A B C 1 レベル MIN MAX 2 1 0.3 0.7 3 2 0.8 1.2 4 3 1.3 1.7 5 4 1.8 2.2 6 5 2.3 2.7 7 6 2.8 3.2 8 7 3.3 10 たとえば、A10のセルに 1.5 と入力したら、その値がどのレベルの範囲であるのかを検索し、 レベルを返したいのです。 1.5のレベルは3なので、隣のA11のセルに 3 と表示する関数を作成したいのです。 値一致検索であればVLOOKUPを使えばいいのですが、 範囲検索はどうすればいいのかがわからなくて 質問しました。 ご教授おねがいいたします。
- ベストアンサー
- オフィス系ソフト
- エクセルの条件検索
行の先頭の値を返すには エクセル関数をどのようにつかったらよいのでしょうか? たとえば CC1を検索すると Bが表示されるようにしたいのですが A AA1 AA2 AA3 AA4 B BB1 BB2 CC1 D BB4 AA5 この表には同じ値は絶対ありません。 VLOOKUPなど LOOKUPを主に検索をしてみたのですが、わかりませんでした よろしくおねがいいたします。
- ベストアンサー
- その他MS Office製品
- 【EXCEL】条件によって特定のセルの値を探し、他ファイルの同じ値のある行に反映させる
セルK4がTRUEとなると、 あるセル(E12)がその4つ左のセル(A12)に表示されている 番号を探し、他ファイルにある同じ番号の4つ右のセルに○がつく・・・ というようにしたいのですが、関数を駆使してできますでしょうか? イメージはファイルBBのE12に =IF($K$4=TRUE,~ と入れ、 TRUEになったらファイルAAのE9(同じ301番)に○がつく感じです >_< どなたか関数に詳しい方、アドバイスをお願いいたします!! ちなみに下記のような状態です。 【ファイルAA(Sheet1)】 A B C D E 8 番号 発行日 期限 氏名 状況 9 301 10/5 4/3 ●● 10 302 11/5 5/4 ○○ : : : : : : 【ファイルBB】 (Sheet1の表) A B C D E 11 番号 発行日 期限 氏名 状況 12 301 10/5 4/3 ●● 13 302 11/5 5/4 ○○ : : : : : :
- ベストアンサー
- オフィス系ソフト
- 複数の条件で他のシートを検索する
先日教えてくださった方々ありがとうございました。 また質問なんですが、先生方知恵を貸してください。 sheet1 A | B | C | D | E | F | G ======================= 1 | 2 | 3 | AA | BB | 00 | 空欄 1 | 2 | 3 | BB | CC | 11 | 空欄 2 | 3 | 4 | CC | AA | 22 | 空欄 5 | 6 | 7 | BA | CA | 12 | 空欄 sheet2 A | B | C | D ========================== AA | BB | 00 | 3 AD | C | 01 | 4 BB | CC | 11 | 2 CC | AA | 22 | 4 CA | BA | 20 | 5 BA | CA | 12 | 1 このように入力されています sheet1のDEFに完全に一致する組み合わせをsheet2のABCから探し Dをsheet1の空欄Gに出力させる さらにそのGと一致するsheet1のABCがあれば文字色を変える というものです。 分かり難いですが、教えてください。 関数のVLOOKUPで出力までは出来たのですが、 文字色を変えることが出来ませんでした。 マクロで全部やってしまった方が早そうなので知恵をお貸しください。 。
- 締切済み
- Visual Basic
- EXCELのIF関数 複数のセルを参照することはできますか?
以下のようなことをIF関数もしくは別の手段で実現できますか? 条件1)貸出時:B2を参照し、空白でなければCに"貸出中"が入る A | B | C | D | E 管理番号 貸出日 STATUS 返却予定日 返却日 001 2005/11/1 貸出中 2005/11/8 条件2)E(返却日)に値があれば、Cに"返却済"を入力 A | B | C | D | E 管理番号 貸出日 STATUS 返却予定日 返却日 001 2005/11/1 返却済 2005/11/8 2005/11/7 つまり、条件1と2はBとEの異なるセルを参照し、 優先度 E>B と判断 Bに値が入っていても、Eに値があれば、"返却済"という値を返すようにしたいのです。 推測で次のような関数を埋め込んだところエラーになりました。。。 =IF(C2>1000/1/1,IF(I2>1000/1/1,"返却済",FALSE)"貸出中",FALSE) 基本的なところからの再学習が必要かもしれませんが、どなたか知恵をお貸しいただければ幸いでございます。
- ベストアンサー
- オフィス系ソフト
- Excel関数:文字を含む複数条件の合計 (2)
「AA」の文字を含むA社の合計(=8)、しかし、そのうち「例外」の文字が含まれている場合(該当4) は合計から除く方法を教えていただけますでしょうか。 A B C D E F ――――――――――――――――――――――――― 1 |商品名 A社 B社 C社 A社 B社 2 |AA 1 1 1 1 1 3 |BB 1 1 1 1 1 4 |ab AA 1 1 1 1 1 5 |ab BB 1 1 1 1 1 6 |ab AA 例外 1 1 1 1 1 7 |ab BB 例外 1 1 1 1 1 8 |ab AA 12 例外 1 1 1 1 1 9 |ab BB 12 例外 1 1 1 1 1 つい先日、「AA」の文字を含むA社の合計(=8) については教えていただき解決することができました。 =SUMPRODUCT((ISNUMBER(FIND("AA",A2:A9)))*(B1:F1="A社")*(B2:F9)) 今度はこれに 「例外」の文字が含まれる値は合計せず、「4」を導き出す数式は可能でしょうか。 ※件数カウントではありません。 よろしくお願いいたします!
- ベストアンサー
- その他MS Office製品
- Excel関数:文字を含む複数条件の合計
関数の達人の方、教えてください! A B C D E F ―――――――――――――――――――――――― 1 | 商品名 A社 B社 C社 A社 C社 2 | AA (1) 1 1 (2) 2 3 | BB 1 1 1 2 2 4 | ab AA (1) 1 1 (2) 2 5 | ab BB 1 1 1 2 2 6 | ab AA cd (1) 1 1 (2) 2 7 | ab BB cd 1 1 1 2 2 ―――――――――――――――――――――――― この表から「A社のAAを含む合計=合計9」を出したいです。つまり○数字になっているところの合計です。 自分なりに以下で試したところ、いづれも「0」となってしまいました。 =SUMPRODUCT((A2:A7="*AA*")*(B1:F1="A社"),(B2:D7)) =SUMPRODUCT(((A2:A7="*AA*")*(B1:F1="A社")),(B2:D7)) 列ごとで AA を含む合計を一旦計算することはできましたが、A社は複数列あるため、できれば一度に A社 の該当する合計を出せればと思っています。 =SUMIF(A2:A7,"*AA*",B2:B7) → 合計3 よろしくお願いいたします。
- ベストアンサー
- その他MS Office製品
- エクセル関数 複数条件検索について
エクセル関数について質問です。 検索値を増やす場合の関数について教えてください。 セルA6に、セルA3とA4に入力した値と合致する値をSheet2から抽出し、抽出した値とA5の値を掛けるという以下の数式が入っています。 =IF(2-COUNTA(A3,A4),"",VLOOKUP(A3,Sheet2!A:AH,MATCH(A4,Sheet2!A$1:AH$1,1),0)*A5) Sheet2のリストに項目が増えた為、この数式をセルA2(新しく増えた検索値)とA3とA4に入力した値と合致する値をSheet2から抽出し、抽出した値とA5の値を掛けるという数式をA6入れたいのですが、この場合、どのように数式を直せばいいのでしょうか。 エクセルのバージョンは2007です。 ご教示下さい。よろしくお願いします。
- 締切済み
- オフィス系ソフト