ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   vlookup with iserror (https://www.excelbanter.com/excel-programming/359518-vlookup-iserror.html)

[email protected]

vlookup with iserror
 
Hi, all.

I have the following code which will take a string and search for it in
another worksheet.

once found, it will retrieve the next columns numeric figure.

Function ReplaceValue(ByVal AccStr As String) As Double

'This function will replace the column with the amount found in the
another excel worksheetdata

Dim Amt As Variant

ReplaceValue = 0

Dim Table As Range
Set Table = ThisWorkbook.Worksheets("Sheet").Range("A1:B15000" )

Amt = WorksheetFunction.VLookup(AccStr, Table, 2, False)

If IsError(Amt) Then
ReplaceValue = 0
Else
ReplaceValue = Amt
End If

End Function

If found, it will retrieve the figure. Not found, the code is suppose
to returns 0. but the cell is showing '#VALUE!'. Anyone have any
advise?

Thanks.


Bob Phillips[_6_]

vlookup with iserror
 
Function ReplaceValue(ByVal AccStr As String) As Double

'This function will replace the column with the amount found in the another
excel worksheetdata

Dim Amt As Variant

ReplaceValue = 0

Dim Table As Range
Set Table = ThisWorkbook.Worksheets("Sheet3").Range("A1:B15000 ")

Amt = Application.VLookup(AccStr, Table, 2, False)

If IsError(Amt) Then
ReplaceValue = 0
Else
ReplaceValue = Amt
End If

End Function



--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

wrote in message
oups.com...
Hi, all.

I have the following code which will take a string and search for it in
another worksheet.

once found, it will retrieve the next columns numeric figure.

Function ReplaceValue(ByVal AccStr As String) As Double

'This function will replace the column with the amount found in the
another excel worksheetdata

Dim Amt As Variant

ReplaceValue = 0

Dim Table As Range
Set Table = ThisWorkbook.Worksheets("Sheet").Range("A1:B15000" )

Amt = WorksheetFunction.VLookup(AccStr, Table, 2, False)

If IsError(Amt) Then
ReplaceValue = 0
Else
ReplaceValue = Amt
End If

End Function

If found, it will retrieve the figure. Not found, the code is suppose
to returns 0. but the cell is showing '#VALUE!'. Anyone have any
advise?

Thanks.




Dave Peterson

vlookup with iserror
 
Try changing this:
Amt = WorksheetFunction.VLookup(AccStr, Table, 2, False)
to
Amt = application.VLookup(AccStr, Table, 2, False)

worksheetfunction.vlookup() causes a run time error that you have to program
around.

application.vlookup() returns an error that you can check.

If you really wanted to use worksheetfunction.vlookup(), you could use something
like:

On Error Resume Next
Amt = WorksheetFunction.VLookup(AccStr, Table, 2, False)
If Err.Number < 0 Then
amt = 0
err.clear
end if

ReplaceValue = Amt





wrote:

Hi, all.

I have the following code which will take a string and search for it in
another worksheet.

once found, it will retrieve the next columns numeric figure.

Function ReplaceValue(ByVal AccStr As String) As Double

'This function will replace the column with the amount found in the
another excel worksheetdata

Dim Amt As Variant

ReplaceValue = 0

Dim Table As Range
Set Table = ThisWorkbook.Worksheets("Sheet").Range("A1:B15000" )

Amt = WorksheetFunction.VLookup(AccStr, Table, 2, False)

If IsError(Amt) Then
ReplaceValue = 0
Else
ReplaceValue = Amt
End If

End Function

If found, it will retrieve the figure. Not found, the code is suppose
to returns 0. but the cell is showing '#VALUE!'. Anyone have any
advise?

Thanks.


--

Dave Peterson

Don Guillett

vlookup with iserror
 
It might help if you identified the sheet. Why not just use the vlookup
function.

--
Don Guillett
SalesAid Software

wrote in message
oups.com...
Hi, all.

I have the following code which will take a string and search for it in
another worksheet.

once found, it will retrieve the next columns numeric figure.

Function ReplaceValue(ByVal AccStr As String) As Double

'This function will replace the column with the amount found in the
another excel worksheetdata

Dim Amt As Variant

ReplaceValue = 0

Dim Table As Range
Set Table = ThisWorkbook.Worksheets("Sheet").Range("A1:B15000" )

Amt = WorksheetFunction.VLookup(AccStr, Table, 2, False)

If IsError(Amt) Then
ReplaceValue = 0
Else
ReplaceValue = Amt
End If

End Function

If found, it will retrieve the figure. Not found, the code is suppose
to returns 0. but the cell is showing '#VALUE!'. Anyone have any
advise?

Thanks.




[email protected]

vlookup with iserror
 
hi, Bob. your solution works. thanks.

Bob Phillips wrote:
Function ReplaceValue(ByVal AccStr As String) As Double

'This function will replace the column with the amount found in the another
excel worksheetdata

Dim Amt As Variant

ReplaceValue = 0

Dim Table As Range
Set Table = ThisWorkbook.Worksheets("Sheet3").Range("A1:B15000 ")

Amt = Application.VLookup(AccStr, Table, 2, False)

If IsError(Amt) Then
ReplaceValue = 0
Else
ReplaceValue = Amt
End If

End Function



--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

wrote in message
oups.com...
Hi, all.

I have the following code which will take a string and search for it in
another worksheet.

once found, it will retrieve the next columns numeric figure.

Function ReplaceValue(ByVal AccStr As String) As Double

'This function will replace the column with the amount found in the
another excel worksheetdata

Dim Amt As Variant

ReplaceValue = 0

Dim Table As Range
Set Table = ThisWorkbook.Worksheets("Sheet").Range("A1:B15000" )

Amt = WorksheetFunction.VLookup(AccStr, Table, 2, False)

If IsError(Amt) Then
ReplaceValue = 0
Else
ReplaceValue = Amt
End If

End Function

If found, it will retrieve the figure. Not found, the code is suppose
to returns 0. but the cell is showing '#VALUE!'. Anyone have any
advise?

Thanks.




All times are GMT +1. The time now is 10:22 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com