PDA

View Full Version : Formula help



austenr
08-02-2010, 09:53 AM
This code errors out on the line in red.

If Sheets("Input + Wksheet").Range("D10").Value > 40 And Sheets("Input + Wksheet").Range("G6").Value < 65 Then
Select Case Sheets("Input + Wksheet").Range("B10").Value
Case 1
With Sheets("CP1")
.Range("D12").Value = "X"
.Range("E25").Formula = "=if(MEDCVG=1,VLOOKUP(Over40,1),false,0)/12"


End With
End Select
End If

p45cal
08-02-2010, 10:15 AM
the formula needs to be right first, make sure you can enter it manually on a sheet. Was it meant to be:
.Range("E25").Formula = "=IF(MEDCVG=1,VLOOKUP(Over40,1,FALSE),0)/12"?

edit: As xld points out below, I've still got it wrong, I'd guess that there should be something before Over40 within the vlookup parentheses, ie. what you're looking up.
Just make sure that the formula, when entered manually, gives you the answer you want.

Bob Phillips
08-02-2010, 10:32 AM
Your VLOOKUP is still wrong.

The format of VLOOKUP is

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

Lookup_value The value to search in the first column of the table array (array: Used to build single formulas that produce multiple results or that operate on a group of arguments that are arranged in rows and columns. An array range shares a common formula; an array constant is a group of constants used as an argument.). Lookup_value can be a value or a reference. If lookup_value is smaller than the smallest value in the first column of table_array, VLOOKUP returns the #N/A error value.

Table_array Two or more columns of data. Use a reference to a range or a range name. The values in the first column of table_array are the values searched by lookup_value. These values can be text, numbers, or logical values. Uppercase and lowercase text are equivalent.

Col_index_num The column number in table_array from which the matching value must be returned. A col_index_num of 1 returns the value in the first column in table_array; a col_index_num of 2 returns the value in the second column in table_array, and so on. If col_index_num is:

•Less than 1, VLOOKUP returns the #VALUE! error value.
•Greater than the number of columns in table_array, VLOOKUP returns the #REF! error value.

Range_lookup A logical value that specifies whether you want VLOOKUP to find an exact match or an approximate match:

•If TRUE or omitted, an exact or approximate match is returned. If an exact match is not found, the next largest value that is less than lookup_value is returned.
The values in the first column of table_array must be placed in ascending sort order; otherwise, VLOOKUP may not give the correct value. You can put the values in ascending order by choosing the Sort command from the Data menu and selecting Ascending. For more information, see Default sort orders.

•If FALSE, VLOOKUP will only find an exact match. In this case, the values in the first column of table_array do not need to be sorted. If there are two or more values in the first column of table_array that match the lookup_value, the first value found is used. If an exact match is not found, the error value #N/A is returned.