• 締切済み

エクセル計算方法を教えてください。

=IF(F5="","",O5/(10000000*8))。(達成率の計算をしております。) 上記のシートがあります。 F5は5月度の売り上げ金額、 O5は合計金額 10,000,000は目標金額、 8は残り8か月という意味です。 (1月決算の為5月終了時点では残り8か月という計算です。) 様は5月度のシートで同じように営業マンの数字が下に並んでいます。 今後6月、7月~と5月分のシートをコピーしたらF5がG6を選択、8→7に反映するようなことはできますか? 10人分の数字をマウスで合していちいちやるのは大変面倒です。 効率のいい方法を教えてください。

みんなの回答

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

こんにちは! 各Sheet名は 1月度・2月度・・・のようになっているという前提です。 数式が長いのは不具合が見つかった場合大変で、個人的には好きではないのですが、 表示したいセルに =IF(P5="","",O5/(10000000*(13-(LEFT(RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))),FIND("月",RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))))-1))*1))) という数式を入れフィルハンドルでコピーしてみてください。 ※ 上記ははSheet名を取得しての数式ですが、 どこかのセルにSheet名があれば(仮に各SheetのA1セルに「○月度」と入っていれば) =IF(P5="","",O5/(10000000*(13-(LEFT($A$1,FIND("月",$A$1)-1)*1)))) 程度の関数で対応できると思います。m(_ _)m

回答No.3

「達成率」というのは、「年間の目標額に対するその時点までの売上の総額が占める割合」のことではありませんか?また、「年間の目標額」は、10^7 円の 12 か月分ではありませんか?これらの仮定が正しければ、分母は「*8」ではなく「*12」ではありませんか? 例えば。 A2 2014/1/15 など F1 2014 など    ……「2014 年」ではなく「2014」と記入し、セルの書式を「0" 年"」などに設定 E4 2        ……「2 月」ではなく「2」と記入し、セルの書式を「0" 月"」などに設定 F4 =sumifs(c:c,a:a,">="&date(F$1,2,1),a:a,"<"&date(F$1,mod(e4+10,12)+2+1,1)) G4 =f4/(10^7*12) MOD 関数は、「2, 3, 4, …, 12, 1」という E 列の数列を「0, 1, 2, …, 10, 11」に変換するために用いています。「+1」というのは、翌月を計算しています。 シートは、月ごとには分けないことをお勧めします。月ごとの表が欲しくなったら、オートフィルタで絞り込むなどすれば、すぐに表示できます。毎月 100 行ずつ増えていったとしても 1 年間でたったの 1,200 行なので、データ量的にも問題ありません。 添付図の E ~ G 列については、別シートに置きたければ、それでも差し支えありません。その場合、いったん上のとおり同じシート上に E ~ G 列を作った後、 E ~ G 列の全体をコピーではなく切り取って、別シートに貼り付けます。すると自動的に、数式中の参照が適切な記述内容に書き換わります。

  • shintaro-2
  • ベストアンサー率36% (2266/6245)
回答No.2

どこかから月情報を持ってくるしかありません。 どこかのセルに当月の数字か残月の情報を入力しておき、そのセルを参照するか 例えばシート名が5月なら、 cell関数でシート名を取得し、5という数字を取り出して13-5と計算させるということでしょう。 cell関数については、エクセルのヘルプを参照してください。

  • chonami
  • ベストアンサー率43% (448/1036)
回答No.1

置換しちゃった方が早くないですか?

関連するQ&A