• ベストアンサー

Excel 最新の日付の横のセルを参照したい

C1に12/1、D1に12時、E1に12/2、F1に13時というように横に日と時が交互に入力されていく列があります。この列の最新の日付をA1に及びその最新の横に来ている時間のセルをB1に反映できるようにしたいのですが、やり方がよく解りません。どなたかお教え願えませんでしょうか。よろしくお願いいたします。

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.3

>と要は3日分の日時の間ごとに余計な列が入っているのです。 余計な列の項目名は文字列 日付、時間、共にシリアル値で入っているものとしています A1に  =INDEX(C1:IV1,,MATCH(,C1:IV1,-1)-1) B1に  =INDEX(C1:IV1,,MATCH(,C1:IV1,-1))

tomomo20
質問者

お礼

watabe007様、ご解答ありがとうございます! これです!見事に一番右の日時が表示されました。感激です! 大変助かりました。本当にありがとうございましたm(__)m!

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

その他の回答 (3)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

No.1です! たびたびごめんなさい。 >3日分の日時の間ごとに余計な列が入っているのです。・・・ とありましたので再び顔を出してしまいました。 この余計な列というのは、日付と時刻(時間)の間に余計な列があるのでしょうか? それとも、日付・時刻(時間)の列が3日で一まとめになっていて並んでいて、その間に余計な列が入っているのでしょうか? 仮に、後者でありそれが文字列であれば前回の回答でも問題なく希望の結果が返るとおもいますが、 もし、数値が入っているのであれば、希望通りにならないかもしれませんね。 数値が入っていても39814(今年の1月1日のシリアル値)以下であれば問題ないと思います・・・ 具体的に余計な列というものがどのような形で入っているかによって 回答は変わってくると思います。 以上、まったく回答になっていなくてごめんなさいね。m(__)m

tomomo20
質問者

お礼

tom04様、ありがとうございます! >この余計な列というのは、日付と時刻(時間)の間に余計な列があるのでしょうか? それとも、日付・時刻(時間)の列が3日で一まとめになっていて並んでいて、その間に余計な列が入っているのでしょうか? 仮に、後者でありそれが文字列であれば前回の回答でも問題なく希望の結果が返るとおもいますが、 後者のパターンになります。(何故か昨日できなかったようなのですが、自分の入力ミスだったかもしれません)おっしゃる通りできました。ありがとうございます!ただひとつだけ問題が起こりまして、3日の部分というのは左から「入った日時」「出した日時」「それが戻って来た日時」という構造になっており、例えば「12月10日の朝入って、当日の夕方に戻ってきた」という事もあり、そうなると当然3箇所に同一の「12/10」が入るわけですが、その場合一番左の「入った日時」が表示されてしまいました。が、watabe007さんの解答でとりあえず解決しましたので、いろいろとご丁寧に解答していただきありがとうございましたm(__)m!

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

日付のデータが右の列ほど最新のデータである場合には次のような式でをA1セルに入力します。 =INDEX(C1:XX1,COUNT(C1:XX1)-1) セルの表示形式は日付にします。 B1セルには次の式を入力します。 =INDEX(C1:XX1,COUNT(C1:XX1)) セルの表示形式は時刻にします。

tomomo20
質問者

お礼

KURUMITO様、ご解答ありがとうございます! まさにやりたかった事はこれなんです!大変助かりました、ありがとうございます!ただ、申し訳ありません、最初の質問に書き忘れてしまった事がありまして…実は最初の質問でF1まで入力された後、G列には「日時と関係ない項目」が入り、またHから日、時間…と要は3日分の日時の間ごとに余計な列が入っているのです。このような余計な列は含めずに一番右の最新の日時を出したい場合はどのようにすれば良いでしょうか?お教え頂ければ幸いです。

全文を見る
すると、全ての回答が全文表示されます。
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! 参考になるかどうか判りませんが・・・ 当方使用のExcel2003での回答になります。 日付はシリアル値で入っているものとしています。 (もしシリアル値でないと他の方法を考えなくてはなりません) とりあえず、何列あるか判らないので 2003の場合は最終列がIV列だったとおもいますので 最終列までの当てはまる数式です。 ↓の画像でA1セルに =MAX(C1:IV1) B1セルに =INDEX(C1:IV1,,MATCH(A1,C1:IV1,0)+1) という数式を入れています。 エラー処理はしていません。 以上、参考になれば幸いですが、 他に良い方法があれば読み流してくださいね。m(__)m

tomomo20
質問者

お礼

こんばんは、tom04様、ご解答ありがとうございます!こういうやり方もあるのだと大変参考になりました。ありがとうございます!ただ、KURUMITO様のお礼にも書きましたが、3日ごとに余計な列が入っていて、その場合、お2人のご解答をご利用させて頂自分なりにやってみましたが、どういう式にすれば良いかよくわかりませんでした…お教え頂ければ幸いです。

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

関連するQ&A

  • エクセル:複数セルからの参照

    お世話になります。 A,B,C列にデータが入っています。 D,E,F列に参照のためのデータがあります。 A,B,C列はそれぞれD,E,F列に対応しています。 A,B,C列と同じ並びのデータが入っている行をD,E,F列から探し、その隣のG列の値をH列に返す。 D,E,F列の並びが重複する行はありません。 A,D列は場所の名前、B,C,E,F列には数字が入っている。 例) A1に事務室 B1に20 C1に3 が入っているとする。 D/E/F列が 事務室/20/3 の並びになっているのが10行目の場合、H1にG10のセルの値を返す。 この場合、H列にはどんな計算式を入れておけばよいのでしょうか? A,B,C列と同じ並びのデータがD,E,F列で見つからない場合は空白をH列に返す。 ちなみにD/E/F列が 事務室/20/3 の並びになっている行は10行目しかないです。 よろしくお願いします。

  • EXCELで日付の表示

    お世話になります。 年月日のデータが3つのセルに分かれて入っており、   A   B   C   D   2005   5    1 Dのセルにつなげた日付表示をしたいのですが、 どのようにしたらよいのでしょうか。 ちなみに、セルDに「=CONCATENATE(A1,B1,C1)」と入れたら、 「200551」と表示されました。セルの表示形式を 「yyyy/m/d」としたのですが、変化なく、 セルEに「=TEXT(D1,"0!/00!/00")」と入れたら、 「20/05/51」となってしまいました。 もとデータのB列C列の表示形式を「00」にしてみましたが、 表示は「05」「01」となるのですが、セルD、Eに反映されないのです。 何か良い方法がありましたら、 教えてください。

  • Excelでセルの関連づけを行う

    Excelについて質問です。 1の列には日付が並んでいます。そして2の列以降には,空白セルと入力セルがあります。以下の通りです。     A   B   C   D   E   F 1  5/2 5/3 5/4 5/5 5/6 2   ○       ○          5/4 3       ○           ○  5/6 ※幅が等間隔のフォントで見てください。 この時,2および3の列に入力されたセルが2カ所ずつありますが,それぞれ一番最近についての文字入力の日付をFに返したいのですが,どのような関数を使えばできるでしょうか?(入力文字は実際は○ではなく,いくらか種類があります) おわかりの方がおられましたらよろしくお願いします。

  • エクセル 関数の参照セルの変更

    ご教示お願いします。 =IF(C5=1,A5/B5,0)という式のC5の部分をD5,E5,F5・・・と変更したいのですが、式の中を手入力で変更するのではなく、他のセル(例えばセルA1)にD5,E5,F5・・・入力すると式C5の部分が変更されるようにしたいです。 例)セルA1にD5と入力すると関数=IF(C5=1,A5/B5,0)が=IF(D5=1,A5/B5,0)に変わるみたいにしたいです。セルA1にD5と入力するのが正しいやり方なのかはわかりませんが。

  • Excelで飛び飛びのセル(列)を参照したいのですが…その2

     ある「sheet1」で、G1="A",H1="B",I1="C",J1="D",K1="E",L1="F",M1="G",N1="H",O1="I",P1="J",Q1="K",・・というように文字が入力されているとすると、5列飛びの値A,F,K・・・(G1,L1,Q1・・・)が欲しいのです。そして、その値が「sheet2」に、C5=A,D5=F,E5=K,F5=P・・・となるようにしたいのです。ただ数値が5ずつ増加するのではなく、そのセルに入力されている文字列を参照したいのです。  それをまた、「sheet1」の、G2="A",H2="B",I2="C",J2="D"・・・の値でも同じ事をしたいのですが・・・。  よろしくお願いします。

  • エクセルのセル参照

    エクセルで隣にくるセルを参照したいのですが、どうすればよろしいでしょうか。 F列に計算式を入れるのですが、C、D、E列を非表示にした場合、B列の値を取ってくる。というような感じです。 それが、D,E列を非表示にした場合はC列の値を取ってくるみたいな感じで、自動的に隣のセルとして認識してくれる関数みたいなのはありますか。

  • エクセルの数式で日付=日付がTRUEにならない

    エクセル2010のA列に日付、B列に時刻、C列にある数字が入っており、D列で指定した日付のC列の数字を足したいとします。  A       B   C      D     E 2014/3/4   0:00   1   2014/3/4    2014/3/4   1:00   0   2014/3/5 2014/3/4   2:00   1   2014/3/6   ・      ・    ・      ・   ・      ・    ・      ・   ・      ・    ・      ・ 2014/3/4  23:00   0 2014/3/5   0:00   1   ・      ・    ・      ・   ・      ・    ・      ・   ・      ・    ・      ・ この時、E列には数式「=sumif($A$:$A$,D1,$C:$C)」を入れれば、求めたい数字が出てくるはずです。 ここで質問なんですが、このときにA列に入っている日付とD列に入っている日付が同じなのに、認識されずにsumが行われない時があります。 これは何が原因と考えられますか? データの入力をwindowsでやったりMacでやったりしたことも原因の一つとも考えられますが、その場合に起こり得る問題は何があるでしょうか?

  • excelのセルの並べ替え。

    Excelの操作で迷っています。詳しい方の知恵を拝借できたらと思います。 以下のようにデータの入力されたセルが並んでいます(アルファベット1文字が1セルです)。 A B C D E F G H I J K 横に何セル並んでいるかは、行によってまちまちです。このようなデータが、数千行あります。これを、以下のように1列に並べ替えたいのです。 A B C D E F G 「行列を入れ替えてコピー」ではなかなかに大変なので、何か良い方法を探しています。よろしくお願いいたします

  • エクセルで結合セルを参照する場合の書式設定

    エクセル2010です。 A列が3行毎の結合セルになっていて、その結合セルには日付けが入っているのですが、結合セルの日付けがtodey()より小さい(過去)の場合、B列、C列、D列・・・を行方向に書式設定したいのですがうまく行きません。 範囲全体を指定して、A1<today()でダメだったので、B1:F1と範囲指定してA1<today()、B2:F2と範囲指定してA1<today()、B3:F3も同じようにA1<today()とA1セルの横の3行をバラバラで書式設定して、書式コピーして範囲全体に貼り付けても部分的におかしな色になってしまいます。 何か方法があるのでしょうか?

  • エクセルで、2つの条件に一致する値を返す方法 教えてください

    A B C D E F 1 日付 分数 2 Aさん Bさん Cさん Aさん Bさん Cさん 3 3/2 2/12 3/15 9 10 10 4 3/4 2/12 3/15 2 3 3 5 3/4 2/12 3/15 30 30 30 6 3/3 2/12 3/15 1 1 2 7 3/4 2/12 3/15 3 5 4 8 3/4 2/12 3/15 29 29 29 上記の表より 列A,B,Cは日付 列D,E,Fは分数です ・3行目のG列にD3:F3の範囲で最小値であり、A3:C3の範囲で最新の日付(最大値)である時の 日付を表示したい。 G3のセルを下に引っ張り各行ごとに値を表示したいです。 関数(式)を教えてください。

専門家に質問してみよう