• ベストアンサー

エクセルかアクセスでの表検索

エクセルの表検索についてご回答お願いします。 表A    1月 2月 3月・・・12月 1日  A  B  C 2日  F  D  E 3日  X  Y  Z 4日  O  P  Q  :   : : : 31日  L  M  N この表Aの中でたとえば3月31日はNというように 別のシートにでしたいのですがINDEX・・・・MATCH関数でいけるかなと思ったのですが・・・うまくいきません。 またアクセスではこのようなことができるのでしょうかよろしくお願いいたします

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.4

列方向が月(1~12)、行方向が日(1~31)と決まっているなら MATCH関数無しでも =INDEX(SHeet2!$B$2:$M$32,DAY(A1),MONTH(A1)) (月と日の項目部分は表の範囲に含まない) A1には3/31と入力、表示形式がm"月"d"日"で表示できます。 MATCH関数を使う場合は =INDEX(Sheet2!$A$1:$M32,MATCH("31日",$A$2:$A$32,0),MATCH("3月",$B$1:$M$1,0)) "31日"と"3月"はセル参照してください。

kou00528
質問者

お礼

ありがとうございました。 うまくいきました

すると、全ての回答が全文表示されます。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

(例データ)A1:D7(実際はA1:M32以上だが簡略化) 月日 1月 2月 12月 1日 A B C 2日 F D E 3日 X Y Z 4日 O P Q 5日 R S T 31日 L M N (関数式) 上記以外の範囲の1セルに =INDEX($A$1:$L32,MATCH("31日",$A$1:$A$32,0),MATCH("12月",$A$1:$M$1,0)) (結果) Nとなる。 (前提) 日は全角文字で「31日」月も全角文字で「12月」を仮定している。前後にスペースを入れないこと。 2004/1/31と入れて、31日と表示させていると、前提が 変るので注意。質問文では31だけ半角になっているが 修正した。 (注意) 日付列は内容的にA2からはじまるが、$A$2:$A$32としないで$A$1:$A$32にすべきです。同じく月の行も$A$2:$M$1としないで$A$1:$M$1にする。

kou00528
質問者

お礼

ありがとうございました うまくいきました

すると、全ての回答が全文表示されます。
  • ta123
  • ベストアンサー率51% (95/186)
回答No.2

表Aに名前を定義し、セルA1に入力した日付に対応したセルの値を求める場合は以下の式で参照可能と思います。 =INDEX(表A,DAY(A1)+1,MONTH(A1)+1)

kou00528
質問者

お礼

ありがとうございました トライしてみます。

すると、全ての回答が全文表示されます。
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

INDEX関数を使って可能です。 =index(sheet1!日付と付きを除いたデータのある範囲,日を表す数字,月を表す数字) の様にします。

すると、全ての回答が全文表示されます。

関連するQ&A