こんにちは、私はvbaが初めてで、助けてください。私は示されているようなテーブルを持っています。Days 列は数式列です。式は単純で、Actual DateとDateの差です。しかし、実際の日付は Range("D5") の別のシート (Sheet2) に存在します。この数式をプログラムで割り当てる方法。私は試してみましたがWorksheets("Sheet1").Range("E2:E10").FormulaR1C1 = "=" & Worksheets("Sheet2").Range("D5").Value & "-Sheet1!RC[-1]"
、Worksheets("Sheet1").Range("I6:I10").FormulaR1C1 = "=Sheet2!R[5]C[4]Sheet1!RC[-1]"
残念ながら両方とも間違った値を与えています。ありがとう。
質問する
1186 次
2 に答える
1
DATEDIF関数を使用して、2 つの日付の差を計算できます。
=DATEDIF(Sheet2!D5,Sheet1!E2,"D")
これは最初のセルで機能するはずなので、列のこの数式をコピーして変更する必要があります。
アップデート:
VBA を使用すると、上記のデータセットで動作する以下を使用できます。
Worksheets("Sheet1").Range("E2:E10").FormulaR1C1 = "=DATEDIF(""" & Worksheets("Sheet2").Range("D5") & """,Sheet1!RC[-1],""D"")"
于 2013-02-26T10:14:33.117 に答える
1
数式が別のシートからのものである場合でも、現在のシートのデータを参照できます。
式で R1C1 を使用する:
Range("E2").FormulaR1C1 = "=Today() - R[0]C[-1]"
数値だけをスプレッドシートに追加:
Range("E2").Value = DateDiff("d", Range("D2"), Now())
アップデート:
複数の値の場合:
Worksheets("Sheet1").Range("E2:E10").FormulaR1C1 = "=Today() - R[0]C[-1]"
于 2013-02-26T10:18:41.247 に答える