質問: excelで電車の出発時刻表示をしたい 手も足も出ず、大変困っています。みなさんのお力を貸してください! (1)まず、あるセルに1を入力するとその横のセルに「平日」、2なら「休日」、それ以外なら「再入力」と表示するようにします。(2)そして、何時台(7~19時)で、何本目(「1~5」の数字で入力)の電車かを入力すると(3)電車の出発時刻が表示されるようにします。その際、平日の場合は「平日ダイヤ」、休日の場合は「休日ダイヤ」を参照し「○時○分」の形式で表示するようにします。 平日ダイヤ (休日ダイヤも時間は違いますが同様の形です) a b c d e f 1 1 2 3 4 5←何本目か 2 7時 0 15 30 40 55 3 8時 2 16 30 40 56 4 9時 1 15 30 46 56 ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ 11 16時 1 15 30 40 55 時刻換算表 g h 1 7時 1 2 8時 2 3 9時 3 ・ ・ ・ ・ ・ ・ 10 16時 10 excel初心者で、何をどのように使って出発時刻をだしたらいいのか分かりません。ifを使って地道に計算していくと式がかなり長くなるし...vlookupも組み合わせるのかなとも思ったのですが、どこにどう組み入れていいのかわかりません。 どのような方法で計算したらいいのか教えて下さい。よろしくお願いします。
回答: #3です。一般化という話が出たのを見て 例データ 「平日ダイヤ」とsheet1のシート名を改める 7時015304055 8時216304056 9時115304656 時間の列は、入力データは7,8,9・・として、書式でユーザー定義「#時」を設定して、上記のように見えているもの。 休日ダイヤとsheet2のシート名をかえる。 7時217324357 8時418324358 9時317324357 7,8,9時の時は書式で出している。 sheet3に行って 2休日 何時台何本目出発時刻 8332 出発時刻の下のセルの式は =index(indirect(b1&"ダイヤ!$a$1:$j$19"),match(a3,indirect(b1&"ダイヤ!$a$1:$a$19"),0),b3+1) j列のjー>1日の各時間帯のうち、最大本数の列で修正してください $19の19->1日の時間の最終ダイヤがある最下行で修正してください。 a1に3以上を入れたときのエラーは=if(a!>2,・・・)や =if(or(a1=1,a1=2),・・・)を加えてください。 ーーー この質問は各時刻の「何番目」を指定することになっている。時刻表では、この何番目は、時刻表が手元に見てないはずで、判るはずがないので設問としておかしい。 何かほかの(職場などの)問題をそのまま質問に公表することを恐れ、時刻表の例に変えたのではないですか。しかし元の問題の解決に戻すときに、初心者が適切に式や考え方を修正できるか疑問あり。 時々そういう推測例に出くわすが、できるだけ正直に実際例に近い例で、質問したほうが良いのでは。 「下司の勘ぐり」であればすみません。