>>921
のコード書き忘れてたわ

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo finalty

'無限ループ回避
Application.EnableEvents = False

'C1セルが空白は終了処理へ
If Cells(1, 3) = "" Then
Cells(1, 4) = ""
GoTo finalty
End If
'C1セルが文字列の場合は、そのまま放り込む。それ意外は日付
If WorksheetFunction.IsText(Cells(1, 3)) Then
Cells(1, 4).Value = Cells(1, 3).Value
Else
Cells(1, 4).Value = DateSerial(Year(Now()), Cells(1, 2), Cells(1, 3))
End If

'終了処理
finalty:
Application.EnableEvents = True

End Sub