I am not 100 % sure, but I think you might need to use VBA for this. You could try to create the following custom function: Create named ranges properties and problems in your sheet. Click ALT+F11 to open VBA editor. Press Insert --> Module Write code ' Function ConcatIF(Property...

I doubt it can be done with one formula. This is a very common scenario and is typically solved by adding a Vlookup column to the first table to show the customer name. Then you can build a pivot table with a few clicks. I guess, since using a pivot...

excel,indexing,excel-formula,vlookup

With 125 typed into D2 the first will return 101 from Range A; the second will return 500 from Range B. =INDEX(A:A, MATCH(D2, A:A)) =INDEX(B:B, MATCH(D2, A:A)) This method is known as a INDEX/MATCH function pair. When seeking approximate matches, the values to be examined must be in ascending...

excel,vba,excel-vba,vlookup,excel-2003

That isn't hard at all. Since you have a nice layout especially and the values actually match up from sheet to sheet, it makes it very easy. Here is the flow: Loop through the rows on Sheet1 Get the Temp Day. Loop through the columns on that row. Assign the...

Try making a pivot table from your data (this will not make formulas, though, but will nevertheless give you the desired results). Here is a simple guide on doing that in Excel 2003 - http://www.techonthenet.com/excel/pivottbls/create.php...

excel,if-statement,excel-formula,vlookup,worksheet-function

If you wish to work through each of the pairs of columns in order, for an example of three pairs, just: =IFERROR(VLOOKUP(B2:B11,Sheet2!A:B,2,0),IFERROR(VLOOKUP(B2:B11,Sheet2!D:E,2,0),IFERROR(VLOOKUP(B2:B11,Sheet2!G:H,2,0),"No Match"))) assuming that it is B2 that is to be your search term (lookup_value) and that the formula above is in Row2. Where ranges are used as the...

You could use this VBA solution: Sub main() Dim i As Integer Dim j As Integer For i = 2 To 16 For j = 2 To 16 If Abs(Cells(j, 2) - Cells(i, 1)) < 0.007 Then Cells(i, 3) = j End If Next j Next i End Sub It...

You can try this: First open Book B leave Book A closed right click the sheet name and select view code copy and paste this in edit where stated press the green play button or F5 ***** Don't forget to save a backup copy of your files before running in...

excel,if-statement,count,excel-formula,vlookup

Try using SUMPRODUCT: =SUMPRODUCT(($R$2:$R$103="No")*($D$2:$D$103=D29)*($N$2:$N$103>$M$2:$M$103)*($N$2:$N$103>$P$2:$P$103)) This will count rows if: There is "No" in the column R; There are other rows with the same Sales Order (col D) with; Both quantity picked and quantify on hand below open quantity. I discarded the 'or' part because from your comments, it's really not...

=VLOOKUP(5,$A$2:B100,COLUMNS($A$2:B100)) Unfortunately you cannot simply drag it, you'll need to replace as there are two equivalent ranges written in the nested function. The COLUMNS effectively counts the columns in the range giving the exact result needed for the VLOOKUP's end variant. EDIT to show OP what a simple drag function...

There's a lot of code there, so it's difficult to say what the exact issue might be. Try this version: Sub tester() Dim c As Range If TypeName(Selection)<>"Range" Then Exit Sub For Each c In Selection CopySourceFormats c Next c End Sub 'If the passed cell has a VLOOKUP formula,...

excel-vba,dynamic,filenames,vlookup,getopenfilename

I strongly assume that RefFile is a variable in your VBA code. At the moment, you hardcode & RefFile & into the formula, but not its content. Change this Range("Z2").Formula = "=IFNA(VLOOKUP(Y2,""'["" & RefFile & ""]'!... into this: Range("Z2").Formula = "=IFNA(VLOOKUP(Y2,""'[""" & RefFile & """]'!... ...

Yes you need to use MATCH. I think the easiest way to do this is using the OFFSET function:- =AVERAGE(OFFSET(B1,MATCH(E2,A2:A11,0)-D2,0,D2*2+1)) Where the lookup value is in E2 and the number of cells to include either side is in D2. If D2 contains zero, you just get the value corresponding to...

excel,date,formatting,string-formatting,vlookup

Please try formatting as: mm/dd/yyyy;; ...

Not impressed by you searching but please try something like: =VLOOKUP(A2,Sheet2!$A$2:$B$5,2,0) in Sheet1 B2 copied down to suit....

if-statement,excel-formula,vlookup

I believe that this will do what you want: =IF(AND(A2<=DATEVALUE("4/30/2015"),B2>=DATEVALUE("4/1/2015")),"Your function here","") You'd get rid of the quotes for "Your function here" and replace it with your delta*vlookup formula. If it works, please accept my answer :) If you formatted the column heading so it was just the first day...

You don't seem to need to return any value from matching rows, just check for the existence of a four column match. A COUNTIFS function can accomplish this efficiently and without Helper column(s). Any non-zero value can be considered True but if you need to show TRUE on the worksheet,...

If you combine VLOOKUP with MATCH you can search based on column name, not index. Remember that the MATCH function returns the numeric index of the match. Let's assume that your data looks like the below: NAME DAY1 DAY2 DAY3 Bob 123 345 567 Tim 456 789 998 A functioning...

Use this formula instead. It will return the first match found for the bit of text entered in cell B1. =VLOOKUP(B1&"*",'SES Companies'!A2:C1214,2,FALSE) You could alter the formula to look for a piece of text within the Company name and return the first match. =VLOOKUP("*"&B1&"*",'SES Companies'!A2:C1214,2,FALSE) Note: do keep in mind...

Try this, Sub SpecialCopy() Dim targetSh As Worksheet Set targetSh = ThisWorkbook.Worksheets("ControlAnswered") Dim i As Long For i = 1 To Cells(Rows.Count, "F").End(xlUp).Row If Cells(i, 6).Value = "Answered" Then Range(Cells(i, 2), Cells(i, 6)).Copy Destination:=targetSh.Range("A" & targetSh.Cells(Rows.Count, "A").End(xlUp).Row + 1) End If Next i End Sub I should say that you...

excel,excel-2010,vlookup,sumifs

Assuming your second table (Types and Codes) is in D1:E9 and the third table (Transactions, Codes and Costs) is in G1:I6 then with "Charges" in A2 use this "array formula" in B2 =SUM(SUMIF(H$2:H$6,IF(D$2:D$9=A2,E$2:E$9),I$2:I$6)) confirm with CTRL+SHIFT+ENTER and copy down as required The IF function provides a list of the valid...

r,replace,pattern-matching,match,vlookup

Could also do df1[] <- match(unlist(df1), df2$V1) # V1 V2 V3 # 1 1 NA 9 # 2 2 1 NA # 3 3 NA 3 # 4 4 8 4 # 5 5 NA 5 # 6 6 4 3 If the numbers in df2 are not always in...

Try this (Untested) Private Sub vlookups() Dim ws As Worksheet Dim lRow As Long Dim sPath As String, sFile As String, sTemp As String Dim Ret Set ws = ThisWorkbook.Sheets("Macro Template") Ret = Application.GetOpenFilename(FileFilter:="Excel Workbooks (*.xls*),*.xls*", _ Title:="Select new data file for VLOOKUP") If Ret = False Then Exit Sub...

vlookup does the match for you so you don't need that function. This should work for you: =VLOOKUP(A1, 'Submitted Data'!A1:B3,2,FALSE) Where A1 is the cell with the value you want to find in a different range of cells (i.e, the data on the other sheet. Submitted Data'!A1:B3 is the range...

Perhaps COUNTIFS will give you your answer =COUNTIFS(A:A,H3,B:B,E3)>0 That will give you TRUE only if document H3 is found in column A...and on that same row the revision # in column B is the same as E3...

Simply re-organize your table so that there's one row per name... the V-Lookup on the name and get the matching list. Person Text Mike Smith String with names Robert Johnson String with names Suzy Q String with names Dan Boy Second string with names ...

excel,excel-formula,excel-2007,vlookup

You can try this provided that each sheet have unique ID's only (no duplicate). Kinda long formula though and not Vlookup. =IFERROR(INDEX(Sheet1!$A:$E,MATCH($A2,Sheet1!$A:$A,0),MATCH(B$1,Sheet1!$1:$1,0)), IFERROR(INDEX(Sheet2!$A:$E,MATCH($A2,Sheet2!$A:$A,0),MATCH(B$1,Sheet2!$1:$1,0)), IFERROR(INDEX(Sheet3!$A:$E,MATCH($A2,Sheet3!$A:$A,0),MATCH(B$1,Sheet3!$1:$1,0)),""))) Basically it is a simple Index-Match combination with nested Iferror to try searching on different sheets. So if you have your sheets set up like below:...

vba,dynamic,copy,range,vlookup

Assuming the year 1990 appears only once in column A: Sub Figure11() Dim yr1990 As Variant Dim rw As Integer Sheets("BCW").Activate Set yr1990 = Columns(1).Find(what:=1990, lookat:=xlWhole) If yr1990 Is Nothing Then Debug.Print "year 1990 not found" Exit Sub Else: rw = Cells.Find(what:=1990, lookat:=xlWhole).Row End If Range("C14", Cells(rw, 3)).Copy Worksheets("Figure1-1").Range("B3").PasteSpecial xlPasteValues...

You need to be using the name of the sheet, not the object itself. ActiveCell.FormulaR1C1 = _ "=VLOOKUP(RC[-2],'[" & filename & "]" & ws.Name & "'!R8C4:R500C6,3,FALSE)" ...

Actually it's not that difficult, providing your lookup_value appears precisely once within that range. For example, with a range of A2:D100 and a search value in e.g. G2: =INDEX(D2:D100,SUMPRODUCT((A2:C100=G2)*(ROW(A2:C100)-MIN(ROW(A2:C100))+1))) Regards...

This will have to be an array formula for a two column match. =INDEX('Data Table'!R:R; MATCH(1; ('Data Table'!C:C=C27)*('Data Table'!AB:AB=""); 0); 1) Array formulas need to be finalized with Ctrl+Shift+Enter↵. Try and reduce your full-column references to ranges more closely representing the extents of your actual data. Array formulas chew up...

vba,match,condition,criteria,vlookup

This should work (I decided not to use worksheetfunction.vlookup): Sub MyVlookup2() Dim myrange As Range Dim i As Long, j As Long Dim lastrow As Long Dim lastrow2 As Long Dim diff As Double Const tolerance As Long = 100 Set myrange = Range("D:G") lastrow = Sheets("Sheet1").Range("B" & Rows.Count).End(xlUp).Row lastrow2...

try this, $ is the anchor... =VLOOKUP('Data'!L2,'Mapping Data'!$B$2:'Mapping Data'!$C$3,2,FALSE) ...

excel,vba,if-statement,vlookup

What you need is an IFERROR statement: .Formula = "=IFERROR(VLOOKUP(A10, 'PCMS-dump'!A:B, 2, FALSE),(VLOOKUP(A10, 'Imported in PCMS'!A:C, 3, FALSE)))" ...

If you don't need the values to be text, you could format the cells as a Custom format of Type "00": EDIT A simpler answer is to change your code to this: 'vlookup based on combobox selection held in variable Cat3No = Application.WorksheetFunction.VLookup(Me.ComboBoxCat3Name.Value, (Worksheets("ValidCombos").Range("C:D")), 2, False) 'variable used to change...

Indirect is what you are looking for =VLOOKUP(B21,INDIRECT("F_" & "CCIII_CPI"), 2, FALSE) Basically Indirect takes text that represents a range and makes Excel recognize it as a range. i.e. =Indirect("A" & 2) will refer to A2...

Try this (untested, but compiles) Notes: 1) Always try to qualify every use of Range() or Cells() with a worksheet object 2) If you drop the WorkSheetFunction then you can test the return value to see if it is an error, instead of having vlookup trigger a run-time error if...

spreadsheet,vlookup,openoffice-calc

You should use VLOOKUP() for this: =VLOOKUP(B2;Sheet2.A2:B6;2;0) VLOOKUP (V = Vertical) is a function that will do exactly as you described, the parameters are: What value you wish to find (in this case B2 = 119) Where is the data (in this case the other sheet's A:B range), it is...

php,string,return,matching,vlookup

I suppouse data have not error, so don't do any test $c1 = file('csvurl.txt'); $l = count($c1); for ($i = 0; $i < $l; $i++) { list($name,$url) = explode(',', $c1[$i]); // making array $red['H001'] => 'URL1" $red[trim($name)] = trim($url); } unset($c1); $c = file('tickerMaster.txt'); $l = count($c); for ($i =...

Try this in column C: =IF(ISNUMBER(MATCH(B1, A:A, 0)), "Found", "") This will search column A for the value in B1 and return "Found" if it's found or leave it blank otherwise....

excel,vba,excel-vba,match,vlookup

In fact, you never ReDim your Result() so it is just an empty array with no actual cell (not even an empty cell), you first need to ReDim it. Here is my version, I didn't use the function Match but that should work anyway : Function Conduitt(ManHole As String) As...

excel,vba,loops,if-statement,vlookup

You should use: Else Exit Sub '<-- Exit! :) End If Instead of: Else End Sub '<-- Instead of End :3 End If Hope this helps! Edit: To answer your comment Dim vTest As Variant On Error Resume Next '<-- Add these since you are catching the error immediately after...

Add a helper row above your table with values 2, 3, 4, ... , 100. Say it will be row 1 so your destination table shifts down one row. Then your VLOOKUP formula is like this: =VLOOKUP($A3,sheet1!$A:$CV,B$1,0) So you can specify the resulting column for VLOOKUP dynamically! Voila! Variant 2...

Try this. I assumed that you need pull data from main to contract. I hope i get your question right Main worksheet : Contract worksheet (Result) Option Explicit Dim MyWorkbook As Workbook Dim MyWorksheet As Worksheet Dim MyOutputWorksheet As Worksheet Sub PullData() Set MyWorkbook = Workbooks(ActiveWorkbook.Name) Set MyWorksheet = MyWorkbook.Sheets("Main")...

Hey everyone I got my problem solved huuuuuh the problem was auto fill that increased the table array range due to that vlookup generated #N/A. When I drag the first cell the range started increasing and my array range was ,D1:D255, and after D93 as there was no information stored...

As follow up from comments, this one works: Worksheets("Sheet1").Cells(ptr, out).Formula = "=VLookup(""" & val & """,'" & sheetname1 & "'!" & Worksheets(sheetname1).Range(start_range, end_range).Address & "," & Hincrement & ", False)" ...

Here is an solution that you can use using an Aggregate function there are two parts to the soltution. Part 1) Finding max date of column B = "x" and column D = "d" =AGGREGATE(14,6,$C$2:$C$7/((B2:B7="x")*(D2:D7="d")),1) This will give you the max date. also this is a great video to watch...

Your formula is: =VLOOKUP(A8,Sheet1!A1:B285, 1, FALSE) If you take a look at VLOOKUP description, you will find the following description of the first parameter: The value you want to lookup. The value you want to look up must be in the first column of the range of cells you specify...

As I mentioned in comments, you can use: =INDEX($J$2:$J$40,MATCH(TRIM(M2) & TRIM(N2) & TRIM(O2),TRIM($G$2:$G$40) & TRIM($H$2:$H$40) & TRIM($I$2:$I$40),0)) This is an array formula, so type the formula then press CTRL+SHIFT+ENTER. Curly brackets will automatically appear at the start and end of the formula. Or more elegant approach (similar to this post):...

excel,location,ip-address,vlookup,ipv4

You can convert your quad IP to a numeric using this function Function GetNumericIP(quadIP As String) As Long Dim sections On Error Resume Next sections = Split(quadIP, ".") GetNumericIP = sections(3) * 256 ^ 0 + sections(2) * 256 ^ 1 + sections(1) * 256 ^ 2 + sections(0) *...

In your match expression, you are comparing one concatenated value $J$1&C3 to another single concatenated value '2006 Results'!$A$2&$B$556. Match expects that second parameter to be a range rather than a single value. In cases like this, where multiple criteria are required, I prefer to use sumifs rather than index-match, even...

excel,date,excel-formula,vlookup,worksheet-function

If your two columns are A an B please try: =VLOOKUP(TODAY(),A:B,2,0) ...

Nesting IFERROR functions can greatly reduce a formula compared to its IF(ISNA(...), ...) equivalent. =IFERROR(VLOOKUP(LEFT(A2,7),LABEL!A:B,2,0), IFERROR(VLOOKUP(LEFT(A2,6),LABEL!A:B,2,0), IFERROR(VLOOKUP(LEFT(A2,5),LABEL!A:B,2,0), IFERROR(VLOOKUP(LEFT(A2,4),LABEL!A:B,2,0), IFERROR(VLOOKUP(LEFT(A2,3),LABEL!A:B,2,0), "MISC"))))) Here is a repaired version of your formula. You were adding in the default MISC paramter more times than was required. =IF(ISNA(VLOOKUP(LEFT(A2,7),LABEL!A:B,2,0)), IF(ISNA(VLOOKUP(LEFT(A2,6),LABEL!A:B,2,0)),...

excel-vba,excel-formula,excel-2010,vlookup

Does this help ? (a formula to put in cells in sheet3) =IF(Sheet1!B1=Sheet1!D1,Sheet1!B1,"") ...

A MATCH function is more efficient than a VLOOKUP function or even a COUNTIF function if all you want to do is prove existence. With Sheets("Lookup).Range("B3:B133780") .Formula = "=iferror(match(a3, '2_4'!A:A, 0), """")" .cells = .value2 End With You will be left with blank cells and cells containing the row numbers...

The problem is that you have an extra "(" in the formula, remove it and error will disapear. Below three variants of your code, the first variant, in my point of view, is more readable (in case when you need only values then better to use worksheetfunction) '================================================================== 'another one...

Don't use the column range "B:B" for the third argument. It's looking for a number (numeric column number) =VLOOKUP($A1, B1:B4, 1, TRUE) EDIT: When I replicate your column data as described, I get: A | B | C green | asdf | green blue | ggss | asdf orange |...

This is not in the first instance a precision problem. It is an inevitable problem when (1) the number of values is even and (2) the median is the mean of two central values that are different. Then the median itself is not a value in the dataset and will...

excel,if-statement,sum,max,vlookup

In B9 please try: =INDEX(A:A,MATCH(MAX(OFFSET(A:A,,MATCH(B7,1:1,0)-1)),OFFSET(A:A,,MATCH(B7,1:1,0)-1),0)) ...

You will need to do something like =IF(N20="paint",VLOOKUP(B20,CODES!$F$2:$G$22,2,0),VLOOKUP(B20,CODES!$J$2:$K$22,2,0)) At the end of your first VLOOKUP you need to specify which column to return the value from on your 'CODES' sheet, I've pointed to Col G by using '2' and '0' returns an exact match. Then close the 'True' VLOOKUP and...

The way you use vlookup is wrong. I write this formula on F column: =VLOOKUP(E3,$B$3:$C$10,2,FALSE) This means look for the value of E3 in B column and give the value in the 2nd column. 2 means the second column of the range $B$3:$C$10 so it is column C. If I...

excel,function,drop-down-menu,vlookup,multiplying

Please try: =G5*VLOOKUP(H5,Sheet2!A1:B2,2,0) ...

excel,indexing,excel-formula,vlookup

So if the data is setup as this dummy example data: A B C D E F G H I J K L ----------------------------------------------------------------- HQ Name (input) Status Live Date James Closed 5/13/2015 Bill Other 5/13/2015 Amy Closed 5/14/2015 Amy Closed 5/14/2015 Bill Live 5/15/2015 James Closed 5/16/2015 Bill Live...

excel-vba,excel-formula,excel-2010,vlookup,worksheet-function

I modified the code as below and it worked. I removed WorkSheetFunction and also handled the result value. Sub UpdateFormula() Dim CurrStr As String Dim EndRow As Long On Error GoTo 0 EndRow = Range("A" & Rows.Count).End(xlUp).Row BaseStr = UCase(Range("A2").Value) Application.ScreenUpdating = False For iter = 4332 To EndRow On...

excel-vba,replace,find,wildcard,vlookup

If using Vlookup like you're doing with blnLookupType set to true doesn't give the result you want, you can use Range.Find, then return the value you want with Offset. It supports wildcards and you can search for either part of a string or a whole. See examples below. Sub FindingPart()...

excel,table,excel-formula,key,vlookup

I asume you want a solution without extra columns. Then you are into Array formulas (a.k.a CSE or ControlShiftEnter functions). Combination of {=SUM(VLOOKUP(...))} doesn't work, but combination of {=SUM(SUMIF(...))} does: in A12 enter =SUM(SUMIF($A$1:$A$3;A7:A10;$B$1:$B$3)) and save with Ctrl+Shift+Enter. You then can copy this to B12. Problem is you will need...

Your code does not explicitly force the ActiveCell to start at Worksheets("Sheet1").Range("B2") but you subsequently offset from the ActiveCell. This seems like a mashup of methods to assign a value into search. It's probably best to avoid relying on ActiveCell altogether. Sub vlookupTest() dim searchTerm as variant, the_result as variant...

As I mentioned in comments, you should use: ActiveCell.FormulaR1C1 = "=VLOOKUP(""" & Mnth & """, 'Tables'!C2:C4, 2, False)" also read this: How to avoid using Select/Active statements...

This looks close. First issue, you should always loop in reverse when deleting rows/columns. Next, I prefer to use a .Find() rather than a worksheet function. This loops through and tries to find the value of Range("C" & i) in column F of your reference sheet. It does this by...

Perhaps a helper column in worksheet2. For example in Cell B1 of Sheet2 =A1&"/"&COUNTIF($A$1:A1, A1) Just pull that down in Column B to create the correct form of id....

You can use array formulas to achieve this (see caveat below): =SUM(('Business Goals'!$A$3:$A$8=$C3:$H3)*'Business Goals'!$C$3:$C$8) This uses the fact that in arithmetic operations, (x=y) evaluates to 1 if true or 0 otherwise. ('Business Goals'!$A$3:$A$8=$C3:$H3) creates a rectangular array which is like a lookup table with a 1 where the values in...

excel-formula,vlookup,excel-2013

Try using the Index Match method. It's an alternative to Vlookup which doesn't require data to be sorted and can therefore be of more use. The typical structure of this method is (the text inside the asterisk will give the ranges specific to your sheet: =INDEX (**Column from which you...

excel,excel-formula,formula,vlookup

Personally, I would convert the letter grade to ASCII character using the function: CODE(A1) use the ASCII Reference Chart for the integer value of each Upper Case character. Note: A=65, B=66, etc... Perform your calculations, then you can use the function: CHAR(A2) to convert the number back into a character....

excel,excel-formula,match,vlookup,worksheet-function

The "near miss" looks as though it used a helper column. Insert a ColumnC into Sheet3 and in C1 there enter: =A1&"|"&B1 Copy that down to suit. In your other sheet in ColumnP (Row1 ? - or adjust the N and O row references to suit) enter: =VLOOKUP($N1&"|"&$O1,Sheet3!$C:$F,2,0) and copy...

Welcome to the world of time, base60 vs. base10 and 15 significant digit floating point precision. I find that sometimes it is simply expedient to give yourself a 'time window' to meet rather than try to round off ranges. The formula in E2 is, =SUMIFS($B$2:$B$8, $A$2:$A$8, ">"&D2-TIME(0, 0, 2),...

Let's say that the second range is in D2:D4 then try this "array formula" =SMALL(IF(C1:C10>A1,IF(COUNTIF(D2:D4,C1:C10)=0,C1:C10)),1) confirmed with CTRL+SHIFT+ENTER That will return the smallest value in C1:C10 which is bigger than A1 but not in the D2:D4 list ( COUNTIF does that second check) If there is no value that qualifies...

vba,excel-vba,excel-2010,vlookup

I think there are probably a lot of things going wrong here. Let's start with the most obvious source of 1004 error, which is unqualified range objects. Example: in a standard module, Range("C2") always refers to the Active sheet. In a sheet module, it always refers to the parent sheet....

excel,cell,formula,lookup,vlookup

Here is some 'bare bones' code with some main concepts for you to start work with. You will notice that you have received a number of downvotes for your Q. This is likely becase the spirit of this site is for you to demonstrate that you have made some attempt...

Looking at your code, you seem to be looking for column numbers such as 7 when you only have 2 columns (F:F-G:G). I would guess you need to change the ranges or decrease the incremental numbers. At the moment, you are looking for a column outside of the array. Going...

vba,excel-vba,vlookup,worksheet

You could also use something similar to below should you want to avoid using the worksheet curr_stn = Application.WorksheetFunction.VLookup(curr_ref, Sheets("Word_Specifications").Range("N:O"), 2, False) Valuse/variables will need to be changed of course. lookup_value,Array (range), Column number, Exact match. Exact match needs false and similar match needs true Try below full code Sub...

excel,vba,excel-formula,vlookup

Give this a go...it seems to work on my test sheet. Be sure to adjust the ranges to suit your situation. Again, this is an array formula and needs to be confirmed with Ctrl+Shift+Enter: =INDEX(C2:C7,MATCH(MIN(ABS((B2:B7=F4)*A2:A7-F5)),ABS((B2:B7=F4)*A2:A7-F5),0),0) It works by zeroing out keys that don't match your group assignment (that's the (B2:B7=F4)*A2:A7-F5)...

excel,indexing,lookup,analysis,vlookup

You can use =SUMPRODUCT() and =INDEX() to perform the double-match. In G2 enter: =INDEX(C$1:C$100,SUMPRODUCT((A$1:A$100=F2)*((B$1:B$100=E2)*ROW($1:100)))) adjust the ranges to match the size of your table....

Try switching the columns in TRACKS around. VLOOKUP bases it's lookup on the first column, so in your case, it's looking through column A (1, 2, 3, etc.) If you want your VLOOKUP to be based on the text, it needs to be in A instead. i.e. | A |...

excel,excel-formula,vlookup,worksheet-function,countif

You need to be consistent with spellings or this won't work, but for standings B2 you might try: =IF(COUNTIFS(race1!C:C,A2,race1!A:A,"<>D",race1!A:A,"<>R")=2,20,IF(COUNTIFS(race1!C:C,A2,race1!A:A,"<>D",race1!A:A,"<>R")=1,7,-15)) and in C2: =COUNTIF(race1!$C$2:$C$11,A2)*10 both copied down to suit. Edit for number of cars in column B change first formula to: =COUNTIFS(race1!C:C,A2,race1!A:A,"<>D",race1!A:A,"<>R") and for points put first formula in C2 (copy...

Here's a solution using the VLOOKUP() function. Enter the formula in cell B1 and pull it down. You might need to edit your range aswell. =VLOOKUP(A1;$C$1:$D$10;2;0) *you might need to change ; with , depending on your language settings....

Sounds like your dates are in strictly increasing order, correct? In which case, assuming you're using Excel 2007 or later, you could use: =AVERAGEIFS(B2:B110,A2:A110,"<="&TODAY(),A2:A110,">="&TODAY()-7) This INDEX formula will also work, though is not as efficient: =AVERAGE(INDEX(B2:B110,MATCH(TODAY(),A2:A110,0)):INDEX(B2:B110,MATCH(TODAY(),A2:A110,0)-7)) Regards...

In this example, just set the right combo name. It should be ok, provided that your combobox lists values from "Range("A2:A" & lastrowi)" as you mention above. Sub "comboname"_Change() Dim list_val As Long list_val = Worksheets("front page").Shapes("comboname").ControlFormat.Value Range("K9") = Worksheets("pipe_totals").Cells((list_val + 1), 1) End Sub Sub test() Dim z As...

excel,vba,excel-vba,split,vlookup

try this Sub test() Dim Cl As Range, Key As Variant Dim Dic As Object: Set Dic = CreateObject("Scripting.Dictionary") Dic.CompareMode = vbTextCompare With Sheets("Sheet1") For Each Cl In .Range("A1:A" & .Cells.SpecialCells(xlCellTypeLastCell).Row) If Cl.Value <> "" Then Dic.Add Cl.Row & "|" & Replace(LCase(Cl.Value), ";", "||") & "|", Cl.Offset(, 1).Text End If...

excel,vba,loops,excel-vba,vlookup

I think this answer can be broken down into three parts: correctly referencing the properties of a Range object, retrieving the last row of data, and using a loop Correctly referencing the range's value: The first thing that I noticed is that you are attempting to assign a Date variable...

This problem can be faced through VBA (at least, I imagine the VBA solution much more easily than the possible Excel one). You need a macro that, for each row in CAS1, search the content in each row of CAS2 and returns you the address. For Each cell In Sheets("CAS1").Range("A1:A"...

Dim f As Range Set f = Sheets("DataList").Range(DrCode).find(DrLevel, lookat:=xlWhole) If Not f Is Nothing Then f.Offset(0,1).Value = txtInfo1.Text End If ...