Excel 2010 の数式を Excel 2003 に変換する

Excel 2010 の数式を Excel 2003 に変換する

私は決して Excel に非常に詳しいわけではありませんが、基本的な操作を行うには十分な知識を持っています。

フォーラムで何度も調べて、次の式を思いつきました。この式が何をするべきかについて説明します。(Office 2010 では問題なく動作するようですが、2003 ではまったく動作しません。2003 は、ファイルをどのような形式にする必要があるのか​​私にはわかりませんでした)

=SUMPRODUCT(--(Deploy!T3:Deploy!T60<=TODAY()),--(Deploy!T3:Deploy!T60>(EDATE(TODAY(),-12))))

Deployシート名がセルの場合、セルT3-T60は計算セルです。この数式は、今日の日付から 1 年前の日付範囲内のセルの数を計算します。

誰かがこの式の簡略化されたバージョンを思いついたら、大変助かります。なぜなら、私はこの式と、それを修正したいくつかのバージョン (主に月数の変更) をワークシート全体で使用しているからです。

答え1

Excel 2003 で数式を試してみましたが、うまくいきました。これはExcel 2003 の組み込み関数ですが、SUMPRODUCTアドインの一部です。そのアドインがインストールされていない場合は、おそらく #VALUE! エラーが発生します。TODAYEDATEAnalysis ToolPak

分析ツールパックを有効にしてみてください

ツール > アドイン > 「分析ツールパック」ボックスにチェックを入れます。数式を再入力する必要がある場合があります。

それが機能しない場合、またはアドインをインストールしたくない、またはインストールできない場合は、この数式を使用して12か月前の日付を取得できます。

=DATE(YEAR(TODAY())-1,MONTH(TODAY()),DAY(TODAY()))

....または、TODAY()-365 を使用することもできます (ただし、うるう年を考慮していないため、明らかに精度は低くなります)

つまり、

=SUMPRODUCT(--(Deploy!T3:T60<=TODAY()),--(Deploy!T3:T60>DATE(YEAR(TODAY())-1,MONTH(TODAY()),DAY(TODAY()))))

あるいは単に

=SUMPRODUCT(--(Deploy!T3:T60<=TODAY()),--(Deploy!T3:T60>TODAY()-365))

それでもエラーが発生する場合は、データ範囲にエラーがある可能性がありますDeploy!T3:T60。その場合は、別の方法COUNTIFとして、ある関数から別の関数を減算します。これは、データ内のエラーを無視するため役立ちますCOUNTIF。式は次のようになります。

=COUNTIF(Deploy!T3:T60,"<="&TODAY())-COUNTIF(Deploy!T3:T60,"<="&DATE(YEAR(TODAY())-1,MONTH(TODAY()),DAY(TODAY())))

答え2

日付が日付(日付 + 時刻ではない)としてフォーマットされており、追加の列があっても構わない場合は、次を試すことができます。

ここに画像の説明を入力してください

  • セル B2 には今日の日付が含まれています=TODAY()
  • セルにはB5-B11カウントしたい日付が含まれています。
  • セルC5-C11には、減算として計算された今日の日付とリスト内の日付の差が含まれますB5-$B$2
  • セル C13 には数式 `=COUNTIF(C5:C13,"<365") が含まれています。

関連情報