• ベストアンサー

エクセルのオートフィルタの条件にセルの値を入れる。

エクセルのオートフィルタを使用した際、条件の中に【A月B日以上】【C月D日以下】としたいのですが、その【A月B日】【C月D日】を、それぞれあるセルに入力した値にしたいのですが、どのようにやればよいですか? 当然、毎回日付は変更します。 マクロでできる方法を教えて下さい。 よろしく御願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

A列に日付データがあり、C1,D1,E1,F1がそれぞれA、B、C、Dに対応している場合 Columns("A:A").AutoFilter 1, ">=" & DateValue(Range("C1") & "/" & Range("D1")) _ , xlAnd, "<=" & DateValue(Range("E1") & "/" & Range("F1"))

pc-cad
質問者

お礼

うまくいきました。 参考になりました。

その他の回答 (1)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

作業列を作って対応します。 例えばA1セルに日付と文字が入力されており下方に日付が入力されているとします。B1セルには抽出選択とでも入力します。 C1セルにはA月の相当する月を数値で、D1セルにはB日に相当する日を数値で、C2セルにはC月に相当する月を数値で、D2セルにはD日に相当する日を数値でそれぞれ入力します。 その後にB2セルには次の式を入力して下方にオートフィルドラッグコピーします。 =IF(AND(A2>=DATE(2012,C$1,D$1),A2<=DATE(2012,C$2,D$2)),1,"") 該当する日付の行には1が表示されますのでB列を主体にフィルタで1を選択すればよいでしょう。

pc-cad
質問者

お礼

参考になりました。 ありがとうございました。

関連するQ&A

  • オートフィルタ後の、マクロでの値の参照に関して

    オートフィルタ後の、マクロでの値の参照に関して 下記を悩んでいます。教えて頂ければ幸いです。 マクロで、あるデーター表から、オートフィルタを使用し、必要なデーターを 抽出し、マクロ内に戻し、その後の計算で使用したいと考えています。 A列、B列、C列にそれぞれ、検索条件を指定し、オートフィルタ後、下記のような状態になります。 参照したい値は、D列になります。 下記のような例では、2.5と2.7の値をマクロ内に戻したいです。 (例:オートフィルタ後) 1行  A▼  B▼  C▼  D 16行 **  **   **  2.5   20行 **  **   **  2.7 *2~15行目は見えなくなっています。 *17~19行目は見えなくなっています。 セルを参照し、マクロ内に戻すには、どのような構文(マクロ)の記述が必要でしょうか? 【備考】 ・上記の例では、セルはD16、D20となりますが、抽出条件によっては、行番号が変わってしまいます。 ・抽出後のD列のデーター数は、常に2つです。 よろしくお願いします。

  • エクセルマクロでオートフィルタで抽出したものをコピーする方法を教えて下さい。

      | A | B | C | D 32| 5月|ロッチ|チョコ|150 エクセルのオートフィルタで抽出したデータをコピーしたいのですが、 毎回結果の行が変わるので、マクロでどう指定したらいいのかわかりません。 詳しい方教えて下さい!

  • エクセル97で、オートフィルタ…

    エクセル97でオートフィルタをつかいたいのですが、    A   B   C   D   E 1          ○   ▽   ▲ 2  ×   ●   ・   ・   ・ 3          ・   ・   ・ 4          ・   ・   ・ 5  ●   ×   ・   ・   ・ 6          ・   ・   ・ AとBの列でオートフィルタをかけたいのですが、 行の123と345をひとまめてにして検索できるようにしたいんです… そのようなことは可能でしょうか?? またその他によい方法があればよろしくおねがいします。

  • エクセルのオートフィルタオプションで日付を出したい。

    いつもお世話になっています。エクセルで、70人の名簿があるので、オートフィルタで「1月生まれ」の人だけを抽出したいです。 A: 「生年月日」という列に、70名それぞれの生年月日が入っている。1980年の7月26日生れなら「1980/7/26」と入力。 B: オートフィルタオプションで「(/1/)を(含む)」と条件づけるが、1件も抽出できない。 C: でも、検索で「(/1/)の(値)」を検索すると、ちゃんとヒットする。 あ: セルの表示形式→日付を「1980年7月26日」に変更してみる。 い: オートフィルタオプション「1月を含む」ではやはり1件も抽出できない。 う: でも「1月」を検索すると、ちゃんと1月と11月生まれの人がヒットする。 どうしても生まれ月ごとに抽出したいと思います。やはり、生年月日を「年」「月」「日」と別の列に分解するしか方法はないのでしょうか。どうかよろしくお願いします。

  • Excel の関数で指定条件座標の値を返す方法

    Excel を使い、複数の特定条件を満たした場合のみ、該当するセルの値を返す方法を教えてください。 下記の条件に基づいた処理をExcel関数で行うことはできるのでしょうか? VBAを使わなければ、目的とするデータの取得は無理でしょうか? ********************************************* B3に本日の日付の「月」:「=today()」書式=m"月" C3に本日の日付の「日」:「=today()」書式=d"月" A6~14の列に「月」 B5~AF5の行に「日」 B6~AF17には、ランダムな英数字を記載 【G20のセル】  ・本日の日付「=today()」に合致する座標に入力されている値を表示させる。    検索条件: B5:AF5=$D$3 (日) & A1:A17=$C$3 (月) **********************************************

  • EXCELのオートフィルタを使っても表示させたいセルがあります。

    こんにちは。 こんどエクセルで毎月の運転記録を作ろうと思っています。 日|運転者名|距離(km) Aの列が「日」 Bの列が「運手者」 Cの列が「距離」です。 毎月の合計距離数をSUMでC列の下の方に出しました。 そしてオートフィルタを使って運転者ごとの表にしたかったのですが、 オートフィルタを使うと合計距離数のセルも消えてしまいました。 そこでお尋ねしたいのですが、 オートフィルタを使っても、 この合計欄のセルを消さない方法はあるでしょうか? また、オートフィルタを使った時に運転者名が自動的に、 任意のセルかヘッダーに表示する方法があったら 併せて教えていただきたいのです。 よろしくお願いします。

  • エクセル オートフィルター

    オートフィルターについて教えて下さい。 同じシート内で、独立した複数のオートフィルターを用いることは出来ますか。下に示すような場合にAとB列に独立してオートフィルターを設定して、果物を抽出して、CとD列には野菜だけを抽出する。みたいなイメージです。オートフィルターやマクロを用いないやり方で他のやり方でもできる場合は教えて下さい。    A    B      C    D 1  りんご 果物   りんご  果物 2 キャベツ 野菜  キャベツ  野菜 3  イチゴ 果物   イチゴ  果物

  • Excelのオートフィルタのことで質問です。

    Excelのオートフィルタのことで質問です。 リストは、A列(月)、B列(名前)、C列(売上)、D列(%)です。年度集計でオートフィルタを使い、名前を重複させずに抽出させ、かつ%順に並べかえたいです。 ちなみに重複する名前の売上と%は合計させて並べ変えたいのですが、うまくできません。 マクロは使ったことがないのですが、どのようにしたらいいでしょうか?

  • エクセルでセルの検索

    エクセル2000で複数検索条件に当てはまるセルの個数を関数で処理したいのですが、何かいい方法はありますか? たとえば、 A列 日付(2004/12/11など) B列 状態(○or×) C列 会社名(A社など) となっていて、 A列が「2004/12/11」でB列が「○」でC列が「A社」の条件を満たすセルの個数を知りたいなどです。 オートフィルターで絞り込むようなイメージです。 この結果を値として欲しいのです。 宜しくお願いします。

  • オートフィルターで抽出されたデータの参照方法について

    1000件以上のデータをA,B、C列にオートフィルターをかけて抽出されたデータのA,B、C列およびD列目の値を参照する式を組みたいのですが、当然のことながらオートフィルターをかける都度、表示されるセル番地が変わるので式がくめません。 多分、マクロでコピーしてどこかにペーストすればいいのでしょうが、まったくわかりません。お教えください。

専門家に質問してみよう