Excel 2010-IF()ステートメント内の複数の計算


2

サプライチェーンの長さに基づいて出荷額を計算する必要がある状況があります。簡単ですが、特定の日付基準に基づいて金額を増やす必要がある場合があります。

私の例は次のとおりです。

  • Shipvalue = 100
  • Date1 = 1/1/2013(Jan)-通常より50%多い送料
  • Date2 = 2013年2月1日(2月)-通常より25%出荷
  • Date3 = 2013年3月1日(3月)-通常より25%出荷

    Supply chain length は:

  • 6月-10月100日
  • 11月-3月140日
  • 4月-6月100日

私が抱えている問題は、日数が増えると、私の式は次のようになることです。

IF( Date1-(Supply chain length + any extra days)=today's date,
    shipvalue+(shipvalue X 50%),
   IF( Date2-(Supply chain length + any extra days)=today's date,
       shipvalue+(shipvalue x 50%)
      IF( Date2-(Supply chain length + any extra days)=today's date,
           shipvalue+(shipvalue x 50%),
          IF( preceding cell<>0,shipvalue,
             0)
         )
      )
  )

ここでの問題は、サプライチェーンの長さが長くなると、フォーミュラが最初の増加以外のすべてを逃すことです。そこで、出荷量を増やすたびに増分され、チェックされる変数を追加することを考えました。

それでは、増加した出荷額の計算と、IFステートメントの一部に変数を設定する方法を教えてください。


または、これを行う簡単な方法はありますか?私は自分の式で立ち往生するだけですか?
ダバジャン

Date1を月全体(1月)にするのか、それとも1月1日のみにするのですか?
datatoo

特定の日付。
ダバジャン

私は、シートに変数を設定し、それを行う通常の出荷よりも大きい出荷を行うたびに変数を設定できると考えていましたが、IFステートメントの1行で複数のコマンドを実行する必要があります-すなわちIF(大きな出荷)次に、このセルで出荷値を計算し、変数セルを増分します.....それを行う方法はありますか?
ダバジャン

回答:


1

開発者リボンのVBA内でSelect Caseステートメントを記述する必要があります。現時点では、4つのifステートメントがあり、それらはすべて互いにうまく機能していることがわかります。VBA内でこのコードを書き始めると、やりたいことを達成するための十分なコーディング力が得られます。

Private Function shippingvalue()
Select Case cell.value
    Case Date1-(Supply chain length + any extra days)
        today's date,shipvalue+(shipvalue X 50%)
    Case your next case
        your next assigned value
End Select
End Function

OK、基本的なプログラミングは理解していますが、Excelのコンテキストでは理解できません。すべてのセルでこのコードを呼び出す必要がありますか?3年以上にわたって日ごとに送料をマッピングしているとしましょう。通常よりも多くの要件が発生するいくつかの日付が必要です。すべてのセルでこのsub()を「呼び出し」ますか?そして、これをどうやってやるの?
ダバジャン

セルの範囲を変数として宣言し、選択ケース関数を使用して適切な値を割り当てることができます。superuser.comはこの種の質問をするのに最適な場所ではありません。Stackoverflow.comを試してみることをお勧めします。VBAの専門家がコードの開発を支援します。私は私が働いて取得しようとしていた選択の場合については持っていたこの記事をチェックアウト、それはあなたの問題のアプローチ方法をお見せ役立つことstackoverflow.com/questions/11215790/...を
ジャレド
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.