Most of the problems have already been mentioned, but here is the answer with the code.
Dim rdr As Excel.Range = oFindings.Range For Each row As Excel.Range In rdr.Rows 'explicitly get the first cell as a range Dim aCell As Excel.Range = row.Cells(1, 1) 'explicity convert the value to String but don't use .String Dim Account as string = CStr(aCell.Value2) If Not String.IsNullOrEmpty(Account) Then ' Do other stuff End If Next
Using aCell.Value2.toString will fail if the cell is empty, because Value2 will be Nothing . Instead, use CStr(aCell.Value2) , which will not fail. But then you need to check if the string is empty or empty before using the value.
source share