• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルの関数について)

エクセルの関数について

このQ&Aのポイント
  • エクセルの関数について質問させて頂きます。
  • セルB1の時間に応じて、条件に応じた時間をセルB2に表示する関数の式を教えて頂きたいです。
  • 具体的には、特定の時間帯やセルA2の値によってセルB2の時間を変える方法について知りたいです。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.6

>3, 東京叉は大阪ないし名古屋の次が、それ以外の停留所の場合は、基本の3分加えた時間を表示する。 と態々断っているという事は、「(東京・大阪・名古屋)以外の停留所が、『東京叉は大阪ないし名古屋』の"次ではない"場合には、加える時間は3分ではない」という事を意味するものと受け取る事も出来るのですが、どの様な意味で態々「東京叉は大阪ないし名古屋の次が」という条件を付け加えておられるのでしょうか?  単純に、「特定の停留所名(最初の質問の東京・大阪・名古屋)以外の停留所の場合は、(時刻には関係なく)基本の3分加えた時間を表示する。」と考えた場合、何か問題が発生する恐れがあるという事なのでしょうか?  「特定の停留所名(最初の質問の東京・大阪・名古屋)以外の停留所が複数連続している区間」の場合や、「『出庫』の次に特定の停留所名(最初の質問の東京・大阪・名古屋)以外の停留所に停車する」場合には、加える時間は3分ではないという事もあるのでしょうか?  それ以外の点では、 >仰っている事と重なった部分が有るかもしれませんが、あとは仰るとうりです。 と書かれている事から、回答No.5の >A列のセルに特定の停留所名(東京・大阪・名古屋)が入力されている行の場合、その行のB列に表示させる時刻は > ・1つ上のセルに表示されている時刻が0:00~5:00の場合 >  ⇒1つ上のセルに表示されている時刻に1分を加えた時刻を表示させる > ・1つ上のセルに表示されている時刻が5:01~6:59の場合 >  ⇒1つ上のセルに表示されている時刻に3分を加えた時刻を表示させる > ・1つ上のセルに表示されている時刻が7:00~8:00の場合 >  ⇒1つ上のセルに表示されている時刻に5分を加えた時刻を表示させる > ・1つ上のセルに表示されている時刻が8:01~15:59の場合 >  ⇒1つ上のセルに表示されている時刻に3分を加えた時刻を表示させる > ・1つ上のセルに表示されている時刻が16:00~17:00の場合 >  ⇒1つ上のセルに表示されている時刻に5分を加えた時刻を表示させる > ・1つ上のセルに表示されている時刻が17:01~19:59の場合 >  ⇒1つ上のセルに表示されている時刻に3分を加えた時刻を表示させる > ・1つ上のセルに表示されている時刻が20:00~24:00の場合 >  ⇒1つ上のセルに表示されている時刻に1分を加えた時刻を表示させる と考えれば宜しいのですね?

motutaku
質問者

お礼

すみません 親身になって何度も返事を頂いたのですが、自分が思っている事を文字にして上手く伝える事が出来ません。 もう少し勉強してから、再度お尋ねしようと思います。 自分の表現力の無さを、情けなく思います。 ありがとうございました。

その他の回答 (5)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.5

>A列の行に入力されている特定の停留所名(最初の質問の東京・大阪・名古屋)が入力されているB列のセルだけ、表示時間が7:00~8:00と16:00~17:00に当てはまる時は、前行の時間に、5分加えた時間を表示させ、表示時間が20:00~05:00に当てはまる時は、前行の時間に1分加えた時間を表示させ、上記のいずれの時間にも当てはまらない所は、通常の3分加えた時間を表示させる。 というふうにしたいのです。  バスが東京、大阪、名古屋以外のバス停に停車する時刻に関する説明がありません。   >特定の停留所名(最初の質問の東京・大阪・名古屋)が入力されているB列のセルだけ(中略)時間を表示させる。 という表現ですと、A列に特定の停留所名が入力されている場合にのみ時刻を表示し、A列に特定の停留所名以外の停留所名が入力されている場合には何も表示しないという意味に受け取る事も出来てしまいますが、A列に特定の停留所名以外の停留所名が入力されている場合には、時刻には関係なく一律に前行の時間に3分加えた時刻を表示させる様にすれば宜しいのでしょうか?  それに >・B1セルかA2セルのいずれか一方のセルに何も入力されていない場合 に関しても何もご説明がなされておりませんが、その場合は何も表示しない様にすれば宜しいのでしょうか?  それから、質問者様が仰っておられる「表示時間」とは、「1つ上のセルに表示されている時刻」の事であると私は受け取ったのですが、それで間違いないでしょうか?(まさか、表示を行うセルに表示される予定である「前行のセルの時刻に3分を加えた時刻」の事ではありませんよね?)  後、 >質問が間違ってたようです。 という前例がある事から、文面を字義どおりに解釈した場合の条件と、質問者様が頭の中でイメージされている条件との間に差異が無いかどうか心配ですので、念のために確認しておきたいのですが、A列のセルに特定の停留所名(東京・大阪・名古屋)が入力されている行の場合、その行のB列に表示させる時刻は ・1つ上のセルに表示されている時刻が0:00~5:00の場合  ⇒1つ上のセルに表示されている時刻に1分を加えた時刻を表示させる ・1つ上のセルに表示されている時刻が5:01~6:59の場合  ⇒1つ上のセルに表示されている時刻に3分を加えた時刻を表示させる ・1つ上のセルに表示されている時刻が7:00~8:00の場合  ⇒1つ上のセルに表示されている時刻に5分を加えた時刻を表示させる ・1つ上のセルに表示されている時刻が8:01~15:59の場合  ⇒1つ上のセルに表示されている時刻に3分を加えた時刻を表示させる ・1つ上のセルに表示されている時刻が16:00~17:00の場合  ⇒1つ上のセルに表示されている時刻に5分を加えた時刻を表示させる ・1つ上のセルに表示されている時刻が17:01~19:59の場合  ⇒1つ上のセルに表示されている時刻に3分を加えた時刻を表示させる ・1つ上のセルに表示されている時刻が20:00~24:00の場合  ⇒1つ上のセルに表示されている時刻に1分を加えた時刻を表示させる で間違いは御座いませんでしょうか?

motutaku
質問者

補足

すみません ありがとうございます。 伝える事が、なかなか難しいですね 出庫時間(セルB1)を一カ所入力する(入力された時)だけで、全ての停留所の通過時間を自動で表示する方法をお尋ねしております。 セルB1が空白の時は、全ての停留所の通過時間のセル(B列)も全て空白のままです。 A列には、全てのセルに(A1だけは"出庫"に固定)あらかじめ、各々の停留所名を入れておきます。そのなかには、東京が入っているセルもあれば、大阪が入っているセルもあれば、名古屋が入っているセルもあります。 コースによって、停留所の数も名前も違って来ますので、必ずしも東京・大阪・名古屋が、何番目に来ると言う事はありません。 それに、東京・大阪・名古屋が、一つも入らない事もあります。 空白のセルは、無いものとします。 そのうえで、基本は、下のセル行く毎に3分づつ増えていく。 その時、特定の停留所名の行のセルに来たときは、上のセルの時間に、 1, 7:00~8:00と16:00~17:00の時間が当てはまる時は、上の時間に5分加える。時間が当てはまらない時は、基本のままで表示する。 2, 20:00~00:00と00:01~05:00の時間が当てはまる時は、上の時間に1分加える。時間が当てはまらない時は、基本のままで表示する。     3, 東京叉は大阪ないし名古屋の次が、それ以外の停留所の場合は、基本の3分加えた時間を表示する。 仮にA4が東京の時、 B3が 10:18ならB4は、10:21。(基本の加算) B3が 07:00~08:00の間ならB4は、07:05~08:05の間の時間(1,の考え方) 2,についても同じような考え方 仰っている事と重なった部分が有るかもしれませんが、あとは仰るとうりです。 伝わったでしょうか?

  • msMike
  • ベストアンサー率20% (364/1804)
回答No.4

[No.3]にコメントした者ですが、こんなん、如何でしょ? 添付図参照 B2: =B1+VLOOKUP(B1,$C$5:$D$10,2)*COUNTIF(地域,$A2) 範囲 A5:A7 に“地域”という名前を付けています。

motutaku
質問者

お礼

すみません 自分の表現力の無さで、自分の考えを文字にして上手く伝える事が出来ません。 もう少し勉強してから、再度お尋ねしようと思います。 遅くなりましたが、ありがとうございました。 感謝いたします。

  • msMike
  • ベストアンサー率20% (364/1804)
回答No.3

(1)~(4)のいずれにも該当しない場合はB2セルの表示は B1 のソノマンマということでよろしいですか? 後になって「そうではなくて…」なんて仰らないで済むように、確認しています。 【余談】 貴方の「前にも似たような質問」と書いたからにはソレがどれか分かるように明記すべし!そうでないなら、思わせ振りなことは書かないで欲しい。 ところで、それは解決したのですか?

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

=B1+IF(OR(A2="東京",A2="大阪",A2="名古屋"),LOOKUP(B1*24,{0,7,8.01,17,18.01},{1,5,3,5,1}),3)/1440 ※A2の場所が多い場合は、どこかの列に東京・大阪・名古屋を入力しておいて =B1+IF(COUNTIF(場所のセル範囲,A2)=1,LOOKUP(B1*24,{0,7,8.01,17,18.01},{1,5,3,5,1}),3)/1440 としたほうがいいかも

motutaku
質問者

お礼

すみません 自分の表現力の無さで、思っている事を文字にして上手く伝える事が出来ませんでした。 もう少し勉強してから、再度お尋ねしようと思います。 ありがとうございました。m(_ _)m

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 どうすれば良いのかにという事に関する説明が不十分です。  (1)~(4)のいずれにも該当しない場合はB2セルの表示をどの様にすれば良いのですか?  例えば ・B1セルかA2セルのいずれか一方のセルに何も入力されていない場合 ・B1セルに(2)の時間が入力されていて、尚且つA2セルの値が(1)以外の場合 ・B1セルに(3)の時間が入力されていて、尚且つA2セルの値が(1)以外の場合 ・B1セルに(2)・(3)以外の時間が入力されていて、尚且つA2セルの値が(1)の場合 には、B2セルの表示をそれぞれどの様にすれば良いのですか?

motutaku
質問者

補足

すみませんでした 質問が間違ってたようです。 改めて質問し直させて頂きます。 路線バスの運転士の仕事をしていますので、仕事で使う運行表を、少しでも簡単に作れないかと思い、質問をさせて頂きます。 まず、A列の各行には通過するバス停の名前を予め入力しておきます。(A1は出庫に固定) 次に、B1に出庫時間を入力した時、B2以降のB列の各行に、前行の時間に3分加えた時間を表示させる。 但し、 A列の行に入力されている特定の停留所名(最初の質問の東京・大阪・名古屋)が入力されているB列のセルだけ、表示時間が7:00~8:00と16:00~17:00に当てはまる時は、前行の時間に、5分加えた時間を表示させ、表示時間が20:00~05:00に当てはまる時は、前行の時間に1分加えた時間を表示させ、上記のいずれの時間にも当てはまらない所は、通常の3分加えた時間を表示させる。 というふうにしたいのです。 理解して頂けましたでしょうか? 矛盾していたり、分からない所はまた、ご指摘して頂ければと思います。 よろしくお願いいたします。

関連するQ&A