0

できるだけ簡単に説明しようと思います。本物は私が望むよりも少し大きいからです。2つのテーブルがあり、1つは商品の横に毎日の日付があり、もう1つは価格の横に特定の日付があるテーブルがあるとします。

Date     |   Product
--------------------
1/1/2013 |  Apple
--------------------
1/2/2013 |  Orange
--------------------
1/3/2013 |  Pineapple
--------------------
1/4/2013 |  Kiwi


ChangeDate | Price
-------------------
1/3/2013   | 1.99
--------------------
1/6/2013   | 0.95

私がする必要があるのは、価格の列を最初のテーブルに割り当てることですが、それはChangeDate列に従って変化します。したがって、たとえば、最初のテーブルの最初の2つのエントリの価格は1.99ですが、最初のchangeDateと一致する3番目のエントリの後、価格は0.95に変更され、別のエントリが一致するまで価格はそのままになります。次のchangeDateで。

私の問題は、この状態を動的に変更する方法がわからないことです。IF($ F $ 1 <A1、G1、G2)の行に沿って何かを使用しています。ここで、F1はchangeDate、A1は最初のテーブルのエントリの日付、G1はF1の隣の価格、G2は次の価格。F1がA#よりも大きい場合、次に条件がF2になるようにするにはどうすればよいですか?VBAを使用する必要がありますか?(すべての情報はすでにシートに記載されており、ユーザー入力は必要ありません)。

前もって感謝します。

4

1 に答える 1

2

そもそも初期価格は必要ないのでは?そうだと思いますが、これは価格変更テーブルの最初のエントリであり、エントリの日付は2013年1月1日です。

そうすれば、簡単なvlookupを使用できるようになります。製品がA2:B5にあり、価格がD1:E3(初期価格のエントリを含む)である場合、製品テーブルの最初のエントリの式は次のようになります。

    =VLOOKUP(A2,$D$1:$E$3,2)
于 2013-01-20T23:36:30.547 に答える