Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 663
  • Last Modified:

Find value in Datatable loop

Im trying to find certain text within column 2 of my datatable. Below is what I have so far but its not finding the values even though they exist. Can anyone help me?
For Each DataRow In AS400DS.Rows
            If AS400DS.Columns(2).ToString = "AB" Then
                Absentee.DataField = "Hours"
            ElseIf AS400DS.Columns(2).ToString = "VA" Then
                Vacation.DataField = "Hours"
            ElseIf AS400DS.Columns(2).ToString = "OT" Then
                OT.DataField = "Hours"
            ElseIf AS400DS.Columns(2).ToString = "WH" Then
                OTx2.DataField = "Hours"
            End If
            Response.Write(AS400DS.Columns(2))
        Next

Open in new window

0
ITHelper80
Asked:
ITHelper80
  • 2
1 Solution
 
srikanthreddyn143Commented:

For Each oRow As DataRow In AS400DS.Rows
            If oRow (2).ToString = "AB" Then
                Absentee.DataField = "Hours"
            ElseIf oRow (2).ToString = "VA" Then
                Vacation.DataField = "Hours"
            ElseIf oRow (2).ToString = "OT" Then
                OT.DataField = "Hours"
            ElseIf oRow (2).ToString = "WH" Then
                OTx2.DataField = "Hours"
            End If
            Response.Write(oRow(2).ToString)
        Next
0
 
MaxOvrdrv2Commented:
hi,

try this:
For Each DataRow In AS400DS.Rows
            If LCase(AS400DS.Columns(2).ToString) = LCase("AB") Then
                Absentee.DataField = "Hours"
            ElseIf LCase(AS400DS.Columns(2).ToString) = LCase("VA") Then
                Vacation.DataField = "Hours"
            ElseIf LCase(AS400DS.Columns(2).ToString) = LCase("OT") Then
                OT.DataField = "Hours"
            ElseIf LCase(AS400DS.Columns(2).ToString) = LCase("WH") Then
                OTx2.DataField = "Hours"
            End If
            Response.Write(AS400DS.Columns(2))
        Next

Open in new window

0
 
mohan_sekarCommented:
For Each myRow As DataRow In AS400DS.Rows
                    If myRow .Item(2).ToString = "AB" Then
                Absentee.DataField = "Hours"
Next
0
 
MaxOvrdrv2Commented:
crud, sorry, my bad, try this instead:
dim dr as DataRow
 
For Each dr In AS400DS.Rows
            If LCase(dr.Columns(2).ToString) = LCase("AB") Then
                Absentee.DataField = "Hours"
            ElseIf LCase(dr.Columns(2).ToString) = LCase("VA") Then
                Vacation.DataField = "Hours"
            ElseIf LCase(dr.Columns(2).ToString) = LCase("OT") Then
                OT.DataField = "Hours"
            ElseIf LCase(dr.Columns(2).ToString) = LCase("WH") Then
                OTx2.DataField = "Hours"
            End If
            Response.Write(dr.Columns(2))
        Next

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now