• ベストアンサー

IF関数にて結果を表示したい?

 お世話様になります。 A列に日付け(1~31)1行目~31行目 B列に 日付けに対応して数値を入力します  各日付けに入力した数値に8を掛けた結果をB列32行目に表示をしたい。  その日の表示だけで、過去の表示は不要です。  今までは数式の行を書き換えて使用してきましたが  もっと簡単に表示できればと思い、宜しくお願いします。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

>順次入力された時点の8倍の数値を32行目に表示 順次って,キチンと上から順番に(ところどころ飛ばしても可)記入するつもりだとします。 B1からB31まで,いま一番下に手で記入されてる数字を採ってくる: =IF(COUNT(B1:B31),LOOKUP(MAX(B1:B31)+1,B1:B31)*8,"") もし順次ってのがキチンと上から順番に,しかも間を飛ばすことなく記入するつもりなら: =IF(COUNT(B1:B31),INDEX(B1:B31,COUNT(B1:B31))*8,"") #言い換えるとあなたが「どう(順次)記入するつもり」なのか,具体的にエクセルをどう触りたいのか説明が足りてませんよってことです。  あなたは「順番に」記入しますが,実は1日,5日,そのあと3日と記入したら「最後に記入したのが順番だ」と言いたいのかも?しれません。

k-maru
質問者

お礼

早々ご回答有り難うございました。 さっそく、ご指導の通り入力し、思い通りの結果が出来ました。 ご指摘のように質問の文章では読むかたにとっては、いろいろ と 想定、解釈に困った事と思います、申し訳ありませんでし た。  でも問題解決ができ、ご親切に有り難うございました。

その他の回答 (2)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

1日なら1番目、3日なら3番目というふうに順番に取ってくるだけでできますね。 =INDEX(B1:B31,DAY(TODAY()))*8

k-maru
質問者

補足

私の説明が悪く、申し訳ありません 実は 日付けA列は無視して単純にB列に数値が1行目から 順次入力された時点の8倍の数値を32行目に表示ができれば よいのですが、宜しくお願いします。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.1

>各日付けに入力した数値に8を掛けた結果をB列32行目に表示をしたい。 >その日の表示だけで、過去の表示は不要です。 VLOOKUP関数とTODAY関数とDAY関数を組み合わせれば実現します。 =VLOOKUP(DAY(TODAY()),A1:B31,2,FALSE)*8 VLOOKUP関数の3番目の引数(FALSE)は省略可能です。