View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
RadarEye RadarEye is offline
external usenet poster
 
Posts: 78
Default vlook up Function

Hi K****ij,

I think that is not a standard function availeble for your problem,
In Excel2003 I have created 2 functions for you:


Public Function K****ijStart(AnIndex As String, _
AllData As Range, _
CodeStart As String) As String
On Local Error GoTo K****ijStart_err

Dim intLoop As Integer

For intLoop = 1 To AllData.Rows.Count
If AllData.Cells(intLoop, 1).Value = AnIndex Then
If Left(AllData.Cells(intLoop, 5).Value, 1) _
= CodeStart Then
K****ijStart _
= Mid(AllData.Cells(intLoop, 5), 3, 8)
Exit For
End If
End If
Next

GoTo K****ijStart_exit

K****ijStart_err:
K****ijStart = "Error"

K****ijStart_exit:
End Function

Public Function K****ijEnd(AnIndex As String, _
AllData As Range, _
CodeStart As String) As String
On Local Error GoTo K****ijEnd_err

Dim intLoop As Integer

For intLoop = 1 To AllData.Rows.Count
If AllData.Cells(intLoop, 1).Value = AnIndex Then
If Left(AllData.Cells(intLoop, 5).Value, 1) _
= CodeStart Then
K****ijEnd = _
Right(AllData.Cells(intLoop, 5).Value, 8)
Exit For
End If
End If
Next

GoTo K****ijEnd_exit

K****ijEnd_err:
K****ijEnd = "Error"

K****ijEnd_exit:
End Function

The first will give the start date the second the end date of the
period.

Both expect 3 parameters:

1) The indexno. to look for
2) The data range to look in
3) A letter "E" or "G"

Sample for cell B2 on Sheet2:
=K****itijStartDate(A2;Sheet1!$A$2:$E$5;"E")

Sample for celll C3 on Sheet3:
=K****ijEnd(A3;Sheet1!$A$2:$E$5;"G")


HTH,

Wouter