
希望日 りんご ばなな みかん 担当 配達チェック
6月1日 2 1 山田
6月3日 4 2 佐藤
6月1日 3 山田 済
6月2日 1 佐藤
6月2日 2 山田
というデータがsheet1に入力されています。
<条件>
・担当 山田のもの
・6月2日以前(このデータでは1日と2日)
・配達チェックが済でないもの(空白です)
この条件を満たすものをsheet2に抽出したいのです。
希望日 りんご ばなな みかん 担当 配達チェック
6月1日 2 1 山田
6月2日 2 山田
とsheet2に表示させるには関数でできますか?
できれば、セル参照でA1セルに6月2日、B1に山田と入力すると抽出されるととても便利なのですが・・・。
皆様のお知恵を拝借させてください!!
No.1ベストアンサー
- 回答日時:
こんばんは!
一例です。
↓の画像でSheet1に作業用の列を設けています。
作業列G2セルに
=IF(COUNTBLANK(Sheet2!$A$1:$B$1),"",IF(AND(A2<=Sheet2!$A$1,E2=Sheet2!$B$1,F2=""),ROW(),""))
という数式を入れオートフィルでずぃ~~~!っと下へコピーしておきます。
そしてSheet2のA4セルに
=IF(COUNT(Sheet1!$G:$G)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!$G:$G,ROW(A1))))
という数式を入れ列方向と行方向にオートフィルでコピー!
A列の表示形式は「日付」にしておきます。
ただ、このままではSheet1に空白セルがあれば「0」が表示されてしまいますので、
当方使用のExcel2003の場合ですが、
メニュー → ツール → オプション → 「表示」タブ → 「ゼロ値」のチェックを外すと
画像のような感じになります。
以上、参考になれば良いのですが・・・m(__)m

ありがとうございます!!
なるほど、そういうふうに組み合わせればいいのですね!
勉強になりましたっ
画像まで添付していただきとてもわかりやすかったです(^o^)
No.6
- 回答日時:
もう回答は出尽くしていますが、いつも気になることを書きます。
この種の質問は週に3度ぐらい出ます。
タイプは「条件付き抜き出し問題」です。
しかし関数でやるのは、1セル当たりでも非常に長い式で、関数の5式以上の組み合わせになる式になります。
エクセルに検索に適した関数が作られてないことが原因です。
初心者には、自分で生み出せる式でなく、式の意味もわからないと思う。コピペして出来ましたと、其れで良い人は使ったら良い。しかし質問者の場合への修正も一苦労。
ーー
解法のタイプは((1)(2)(3)は広く言えば関数による解法でしょう)
(1)A 作業列を使う
B 使わない
(2)A 配列数式を使う
B 使わない(通常の式)
(3)A ユーザー定義関数を使うー 一種のVBA
B 使わない。
(4)フィルタ
の別になると思います。
ーーー
ですから、私は
(1)操作 フィルタ
を使うことをすすめます。
(2)VBA
(3)特別のソフト(フリーソフト)ただし見つけるのが難しい
を考える人もあるでしょう。
ーーー
私は長年「imogasi方式」というのを書いてきました。
上記で言うと(1)のAにあたります
Googleで「imogasi方式」で照会すれば、沢山の質問回答の例が出て、私以外の、今回既に出ているタイプの回答も毎回出ています。
ーー
imogasi方式では
例データ Sheet3
A列ーH列(G列は飛ばし) --は左寄せ表示防止のために入れたもので、実際は空白セル。山田と日付(A1toB1セル)が条件を入れるセルと仮定。
山田2011/6/2
希望日りんごばななみかん担当配達チェック
6月1日2--1山田1
6月3日--42佐藤
6月1日3----山田済
6月2日--1--佐藤
6月2日------山田2
H列が作業列で、H3の式は
=IF(AND(E3=$A$1,A3<=$B$1,F3=""),MAX($H$1:H2)+1,"")
下方向に式を複写してます。
やっていることは、条件に合う行に連番を振ってます。連番にしているところがミソです。
ーー
Sheet4 のA3で
=INDEX(Sheet2!$A$1:$F$100,MATCH(ROW()-2,Sheet2!$H$1:$H$100,0),COLUMN())
F列まで式を複写
A3-F3の式を下方向に式を複写
A列の表示形式を日付、B,C,D列の表示形式を数値に設定。
ーー
結果 Sheet3 A3から
2011/6/12 0 1 山田0
2011/6/20 0 0 山田0
ーー
残された問題点
・0を空白にする ーー>(表示形式で[=0]"";G/標準 の設定など)
・下の行の#N/Aを出さないようにする
は略(上記Googleで「imogasi方式」で照会して出てくる記事に)WEBには書いています)
No.4
- 回答日時:
[フィルタオプションの設定]による方法を案内しておきます。
添付図参照
1.Sheet2 のセル C2 に次式を入力
=AND(Sheet1!A2<=A$1,Sheet1!E2=B$1,Sheet1!F2="")
なお、セル C1 は空白のままにしておく
2.Sheet2 をアクティブにして、[データ]→[フィルタ]→[フィルタ
オプションの設定]を実行して、次の設定を行なった後で[OK]を
クリック
[抽出先]→ “指定した範囲”
[リスト範囲]→ Sheet1!$A$1:$F$10
[検索条件範囲]→ $C$1:$C$2
[抽出範囲]→ $A$3:$F$3

No.3
- 回答日時:
補助列なしにSheet2のA3セル以下に該当データを表示させたいなら、以下のような関数を入力して下方向にオートフィルしてください。
F3セル:
=INDEX(Sheet1!E:E,SMALL(INDEX(((Sheet1!$A$2:$A$100>$A$1)+(Sheet1!$E$2:$E$100<>$B$1)+(Sheet1!$F$2:$F$100="済"))*1000+ROW($A$2:$A$100),),ROW(E1)))&""
A3セル:(右方向にD3セルまでオートフィル)
=IF($E3="","",INDEX(Sheet1!A:A,SMALL(INDEX(((Sheet1!$A$2:$A$100>$A$1)+(Sheet1!$E$2:$E$100<>$B$1)+(Sheet1!$F$2:$F$100="済"))*1000+ROW($A$2:$A$100),),ROW(A1))))
B3:D3セルの空白部分に0を表示しないのであれば、その範囲を右クリックしてセルの書式設定の表示形式をユーザー定義にして「0;;」と入力してください。
#エクセルのバージョンが記載されていないので、すべてのバージョンに対応できる数式を示しましたが、この数式は必ずしも最適な方法とは限りません。
Officeソフトはバージョンによって使用できる機能や操作方法が異なりますので、ご質問の際には必ずバージョンを明記するようにしましょう。
No.2
- 回答日時:
商業高校卒業してます。
29歳主婦です。
参考までに聞いてください。
別のシートに、
条件があう情報を抜き出して一覧表示したい、
ということですよね??
別のシートに表示させる必要がない方法を教えます。
違ったらスルーしてくださいね☆
まず、入力した『希望日』から『配達チェック』までをドラッグします。
※日付や数字を入力したところは含まず、見出しの行のみ。
上部の『データ』タブを開いて、『フィルタ』を選択して、
『オートフィルタ』を選択すると、各見出しの右端にボタンが現れます。
自分の欲しい希望日のみを表示したいときは、
希望日のボタンを押して、(例)6月2日を選ぶと6月2日のみ表示されますし、
更にその中から、担当が山田のもののみ表示させたいときは、
希望日で6月2日と操作したボタンはそのままにして、
更に担当のボタンをおして『山田』を選択してください。
希望日は関係なく、山田担当のもののみ表示させい時は、
希望日で操作したボタンを『すべて』に戻す必要があります。
長くなりましたが、オートフィルタボタンを使うと、
それらを更に昇順や降順にも並べ替えられますから、便利ですよ。
データが消えるわけではないですし、
使い勝手いいと思います。
頑張ってください!!
ありがとうございます
説明不足で申し訳ありませんが、今現在オートフィルタで処理しているのです。
ですが担当者が非常に多くフィルタで抽出する時間と手間が非常にかかるので別シートに抽出したかったのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) Python pandasについての質問です。 日付 名前 ◯月◯日 佐藤 ・ 伊藤 ・ 山田 ・ 2 2022/06/13 17:16
- Excel(エクセル) EXCEL 関数を教えてください。(A列の同じ値が複数ある場合vlookupで出来ますか) 4 2022/12/07 20:54
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/03/10 08:51
- Excel(エクセル) Excel 売上管理シートに入力した売上データを、日報に自動反映させたいと考えています。 売上管理シ 3 2023/04/29 18:08
- Excel(エクセル) Excelで日報を自動で作成したい 売上管理シートに入力した売上データを、日報に自動反映させたいと考 1 2023/04/29 18:07
- Visual Basic(VBA) Sheet3から2つの条件でオートフィルターで抽出した個数をSheet2へ入力するマクロで、一つ目の 4 2023/01/12 23:40
- 倫理・人権 戦後になってから4人の元死刑囚も含め(袴田さんを合わせると5人)再審請求などにより冤罪が 1 2023/03/29 14:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessのクエリで、replace関数...
-
ACCESS VBA でのエラー解決の根...
-
access2021 強制終了してしまう
-
Access VBA [リモートサーバー...
-
Access Error3061 パラメータが...
-
実行時エラー3131 FROM 句の構...
-
Arduinoで温湿度と時刻を1分ご...
-
列が255以上のCSVファイルをAcc...
-
access2021 VBA メソッドまたは...
-
Access VBA を利用して、フォル...
-
Access 複数条件検索の設定が上...
-
Accessでフォームに自動入力し...
-
Microsoft365にAccessってあり...
-
Accessのクエリの結果を、既存...
-
Accessのスプレッドシートエク...
-
Accessのリンクテーブルのパス...
-
Access で半角スペースと全角ス...
-
Microsoft 365 Basic サブスク...
-
Access DAOのExecuteメソッドの...
-
アクセスで教えてください。 住...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Microsoft 365 Basic サブスク...
-
Accessのクエリで、replace関数...
-
access2021 強制終了してしまう
-
ACCESS VBA でのエラー解決の根...
-
Access VBA [リモートサーバー...
-
Accessのスプレッドシートエク...
-
Accessのレポートについて
-
access2021 VBA メソッドまたは...
-
Access Error3061 パラメータが...
-
access2019 チェックボックスと...
-
Accessのクエリの結果を、既存...
-
accessでlaccdbファイルが削除...
-
Access VBA を利用して、フォル...
-
accessデータを指定したExcel、...
-
Accessのリンクテーブルのパス...
-
列が255以上のCSVファイルをAcc...
-
Accessのクエリの印刷設定
-
Accessでレポートを印刷する時...
-
Accessフォームの配色テーマを...
-
Accessデータベースに含まれる...
おすすめ情報