Hey I have an issue with trying to do a reverse order lookup or a bottom up vlookup
My formula is
=ARRAYFORMULA(IFERROR(VLOOKUP(A3:A,{'movement co'!C:R;bfitt!C:R;gladstone!C:R;parkhurst!C:R;mayfield!C:R;alexandria!C:R;'crows nest'!C:R;newtown!C:R;'gregory hills'!C:R;annandale!C:R;graceville!C:R;'south penrith'!C:R;'north melbourne'!C:R;'back on track'!C:R;'elsternwick'!C:R;'brighton'!C:R},{16,2,3,4,15,10,5},0)))
This looks over multiple tabs/sheets to gather the data which works fine, but I need it to look at the last added row which I can't seem to make work with a sort function.
Any ideas?
try:
=ARRAYFORMULA(IFERROR(VLOOKUP(A3:A, SORT(
{'movement co'!C:R, ROW('movement co'!C:R);
bfitt!C:R, ROW(bfitt!C:R);
gladstone!C:R, ROW(gladstone!C:R);
parkhurst!C:R, ROW(parkhurst!C:R);
mayfield!C:R, ROW(mayfield!C:R);
alexandria!C:R, ROW(alexandria!C:R);
'crows nest'!C:R, ROW('crows nest'!C:R);
newtown!C:R, ROW(newtown!C:R);
'gregory hills'!C:R, ROW('gregory hills'!C:R);
annandale!C:R, ROW(annandale!C:R);
graceville!C:R, ROW(graceville!C:R);
'south penrith'!C:R, ROW('south penrith'!C:R);
'north melbourne'!C:R, ROW('north melbourne'!C:R);
'back on track'!C:R, ROW('back on track'!C:R);
'elsternwick'!C:R, ROW('elsternwick'!C:R);
'brighton'!C:R, ROW('brighton'!C:R)}, 17, 0),
{16, 2, 3, 4, 15, 10, 5}, 0)))
Related
I have a search term which spans into 3 columns.
text_A, text_B, text_C
I'm trying to find the A column value for a row which forms almost the same values:
text_A, text_B, text that starts with text_C
I get no result even before handling the search of starts with text_C, even though I expected to get one.
Any tip on how to change this?
=VLOOKUP(I10:I&"^"&J10:J, C10:C&"^"&D10:D, 1, FALSE)
try:
=INDEX(IFNA(VLOOKUP(I10:I&"^"&J10:J, {C10:C&"^"&D10:D, E10:E}, 2, 0)))
update
=ARRAYFORMULA(IFNA(VLOOKUP(I10:I&"×"&J10:J&"×"&K10:K,
{C10:C&"×"&D10:D&"×"&IFERROR(REGEXEXTRACT(E10:E&"",
TEXTJOIN("|", 1, SORT(K10:K, 1, 0)))), B10:B}, 2, 0)))
So finviz changed their website making it more difficult to extract data from their site. I am trying to get the date from the analyst ratings table but I get a series of numbers.
=SUBSTITUTE(INDEX(IMPORTHTML("http://finviz.com/quote.ashx?t="&$A3, "table", 11), 1, 1), "*", "")
For this formula where $A3=FB, I get 44218 for the date instead of Jan-22-21.
I don't have any experience with coding so I am just guessing here.
When I tested your formula with $A3=FB, I confirmed that Jan-22-21 is obtained in a cell. So unfortunately, in myenvironment, I couldn't replicate your situation.
But, from your question, I think that the number of 44218 is the serial number of Jan-22-21. If your Spreadsheet returns 44218 from your formula of =SUBSTITUTE(INDEX(IMPORTHTML("http://finviz.com/quote.ashx?t="&$A3, "table", 11), 1, 1), "*", ""), how about the following modification?
Modified formula:
=TEXT(TO_DATE(SUBSTITUTE(INDEX(IMPORTHTML("http://finviz.com/quote.ashx?t="&$A3, "table", 11), 1, 1), "*", "")),"mmm-dd-yy")
In this case, the cell "A3" has the value of FB.
In this formula, it supposes that =SUBSTITUTE(INDEX(IMPORTHTML("http://finviz.com/quote.ashx?t="&$A3, "table", 11), 1, 1), "*", "") returns the number of 44218 in the cell.
Result:
Other pattern:
As other pattern, I would like to propose to use IMPORTXML. In this case, I thought that the value of Jan-22-21 might be able to be directly retrieved using a xpath.
=IMPORTXML("http://finviz.com/quote.ashx?t="&$A3,"//tr[#class='body-table-rating-neutral'][1]//tr/td[1]")
In this case, the cell "A3" has the value of FB.
XPath is //tr[#class='body-table-rating-neutral'][1]//tr/td[1].
Result:
References:
TO_DATE
TEXT
IMPORTXML
44218 is the same like Jan-22-21
Why?
Because dates are numbers.
Solution
Format 44218 like date from menu
I have a database of customers, where his zone, seller and some other values can change, and I want to generate a table of the last occurrence of each one
Heres a demo sheet
using Vlookup doesn't get the last occurrence
My database is very big and I need something to not slow my sheet that much, because I was using a formula like this one for each cell
=ARRAYFORMULA(LOOKUP(2,1/(C2:C=A2),$D$2:$D))
but the sheet is very slow because of this
Any help on this please ?
use:
=ARRAY_CONSTRAIN(SORTN(SORT({C3:E, B3:B}, 4, 0), 9^9, 2, 1, 1), 9^9, 3)
I have a dashboard that I enter link description here am trying to lookup clients based off of billings per month. the formula required two criteria looking up the Client and the Type of account they have. Some clients have multiple accounts so hence the reason the two criteria lookup is necessary. I can get the formula to work without referencing the month with this line:
=ARRAYFORMULA(iferror(vlookup($A8&$B8, {'Run Rate'!$B$2:$B&'Run Rate'!$C$2:$C,'Run Rate'!$D$2:$I}, 6, 0),""))
But when I try to add referencing the month tab it will not work:
=IF($A$2 = "January 2019",ARRAYFORMULA(iferror(vlookup($A6&$B6, {'Run Rate01'!$B$2:$B&'Run Rate01'!$C$2:$C,'Run Rate01'!$D$2:$I}, 6, 0),
IF($A$2 = "February 2019",ARRAYFORMULA(iferror(vlookup($A6&$B6, {'Run Rate02'!$B$2:$B&'Run Rate02'!$C$2:$C,'Run Rate02'!$D$2:$I}, 6, 0),
IF($A$2 = "March 2019",ARRAYFORMULA(iferror(vlookup($A6&$B6, {'Run Rate03'!$B$2:$B&'Run Rate03'!$C$2:$C,'Run Rate03'!$D$2:$I}, 6, 0),"")))))))))
Here is the sample Dashboard
If you have another way of doing this I would love some advice as well. Any assistance will help.
paste in C6, drag over D6 and then drag down:
=ARRAYFORMULA(IFERROR(VLOOKUP($A6&$B6,
QUERY({'Run Rate02'!$B$2:$B&'Run Rate02'!$C$2:$C, 'Run Rate02'!$D$2:$I},
"where Col4>=date'"&
TEXT(DATE(RIGHT($A$2, 4), MONTH(SPLIT($A$2, " ")&1), 1), "yyyy-mm-dd")&"'
and Col4< date'"&
TEXT(DATE(RIGHT($A$2, 4), MONTH(SPLIT($A$2, " ")&1)+1, 1), "yyyy-mm-dd")&"'"),
COLUMN()+3, 0)))
I got the results I needed with this formula:
=ArrayFormula(IFERROR(IF($A$2 = "January 2019",vlookup($A6&$B6, {'Run Rate01'!$B$2:$B&'Run Rate01'!$C$2:$C,'Run Rate01'!$D$2:$I}, 6, 0), IF($A$2 = "February 2019",vlookup($A6&$B6, {'Run Rate02'!$B$2:$B&'Run Rate02'!$C$2:$C,'Run Rate02'!$D$2:$I}, 6, 0), IF($A$2 = "March 2019",vlookup($A6&$B6, {'Run Rate03'!$B$2:$B&'Run Rate03'!$C$2:$C,'Run Rate03'!$D$2:$I}, 6, 0),"")))))
I am using Google Sheets to look up a formula, but the code comes back saying
"unable to match'.25oz'"
The link for the sheet is here:
https://docs.google.com/spreadsheets/d/1K1Hb9xV8Ky51Vdiv0SG-zKOEH0ELPNBYwMWhDFfm4l0/edit#gid=168328825
The specific part I am having an error with is 'Master Cocktail' D5 where it tries to search either my Spirits sheet or the 'Beer NA Bev' sheet. for the appropriate price based on the oz used.
The code I am using in the cell is:
=ArrayFormula(IF(C5="","",vlookup($B5,{'Beer NA Bev'!$A$63:$H$71;Spirits!$A$2:$I$325},MATCH($C5,{'Beer NA Bev'!$A$62:$K$62;Spirits!$A$3:$J$3},0),FALSE)))
first of all {'Beer NA Bev'!$A$63:$H$71; Spirits!$A$2:$I$325} needs to be: {'Beer NA Bev'!$A$63:$I$71; Spirits!$A$2:$I$325} eg. same amount of columns
then you can drop the whole MATCH and put there IFERROR under which there will be IF with two VLOOKUP (one for TRUE side and one for FALSE side) to distinguish between beer and spirits because you have .25oz in both sheets. and then you can insert simple IFS to check/search for the right .25oz price and return column number for the main VLOOKUP. check this similar issue: https://stackoverflow.com/a/54680420/5632629
something like this:
IFERROR(IF(VLOOKUP(B5, 'Beer NA Bev'!$A$63:$I$71, 1, 0)<>"", IFS(C5=".25oz", 5,
C5=".5oz", 6,
C5=".75oz", 7,
C5="1oz", 8,
C5="2oz", 9), ),
IF(VLOOKUP(B5, Spirits!$A$2:$I$325, 1, 0)<>"", IFS(C5="2oz", 4,
C5="1.5oz", 5,
C5="1oz", 6,
C5=".75oz", 7,
C5=".5oz", 8,
C5=".25oz", 9), ))
and the whole formula would be:
=ARRAYFORMULA(IF(C5="", "",
VLOOKUP($B5, {'Beer NA Bev'!$A$63:$I$71;
Spirits!$A$2:$I$325},
IFERROR(IF(VLOOKUP(B5, 'Beer NA Bev'!$A$63:$I$71, 1, 0)<>"", IFS(C5=".25oz", 5,
C5=".5oz", 6,
C5=".75oz", 7,
C5="1oz", 8,
C5="2oz", 9), ),
IF(VLOOKUP(B5, Spirits!$A$2:$I$325, 1, 0)<>"", IFS(C5="2oz", 4,
C5="1.5oz", 5,
C5="1oz", 6,
C5=".75oz", 7,
C5=".5oz", 8,
C5=".25oz", 9), )), 0)))