2016-05-24 12 views
0

VBを使用して現在の日付フィールドに日数を追加しようとしています。私は詳細について2つの異なるシートを使用しています。以下は私のコードですexcel-vbaのDateAdd関数

Dim data3 As Variant 
Dim data5 As Variant 
Dim data6 As Date 
Dim duedate As Date 

for i = 1 to 10 
data3 = Sheets("Sheet1").Cells(i, "A").Value 
data5 = Sheets("Sheet1").Cells(i, "C").Value 
data6 = CDate(Sheets("Sheet2").Cells(i, "C").Value) 

If data3 = "Value1" And (data5 = "Value2" Or data5 = "Value3") Then 
duedate = DateAdd("d", 5, data6) 
Sheets("Sheet1").Cells(i, "D").Value = duedate 

Else 
'Do nothing 

End If 
Next i 

私は希望の値を得ていません。私が間違っているところを教えてください。ここでは、事前

+0

data6に5日間追加しようとしていますか? – Histerical

+0

はい、Data6にも日付が含まれています。 –

+0

data5とdata6の両方が別のシートにある –

答えて

0

おかげで、私が使用しています現在のコードで、私はいくつかのわずかな変化をしたが、DateAdd一部を取り除く以外にも、上記のコードに何らかの意味が本当にありません。

Sub test() 

Dim data3 As Variant 
Dim data5 As Variant 
Dim data6 As Date 
Dim duedate As Date 

For i = 1 To 10 
    data3 = Sheets(1).Cells(i, "A").Value 
    data5 = Sheets(1).Cells(i, "C").Value 
    data6 = CDate(Sheets(2).Cells(i, "C").Value) 

    If data3 = "Value1" And (data5 = "Value2" Or data5 = "Value3") Then 
     duedate = data6 + 5 
     Sheets(1).Cells(i, "D").Value = duedate 
    End If 
Next i 

End Sub 
関連する問題