| 
    
     |  | ▼ゆき さん: 
 もしVBAで対応されるなら。
 Sample1は「名前なし」さんの式を埋め込んで利用する方法。
 Sample2は「普通のループ処理」です。
 1行目がタイトル行、A列が金額、B列が日付け、判定列はC列。
 
 Sub Sample1()
 With Sheets("Sheet1") '<== 実際のシート名に
 If .Range("B2").Value = "" Then
 MsgBox "データがありません"
 Else
 With .Cells(2, "C").Resize(.Range("B" & .Rows.Count).End(xlUp).Row - 1)
 .Formula = _
 "=IF(VALUE(B2)>=VALUE(""2010/4/1""),IF(VALUE(B2)<=VALUE(""2011/3/31""),A2,""-""),""-"")"
 .Value = .Value
 End With
 End If
 End With
 End Sub
 
 Sub Sample2()
 Dim c As Range
 Dim dF As Date, dT As Date
 dF = "2010/4/1"
 dT = "2011/3/31"
 With Sheets("Sheet1") '<== 実際のシート名に
 If .Range("B2").Value = "" Then
 MsgBox "データがありません"
 Else
 For Each c In .Cells(2, "B").Resize(.Range("B" & .Rows.Count).End(xlUp).Row - 1)
 If c.Value >= dF And c.Value <= dT Then
 c.Offset(, 1).Value = c.Offset(, -1).Value
 Else
 c.Offset(, 1).Value = "-"
 End If
 Next
 End If
 End With
 End Sub
 
 
 |  |