ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Worksheet Functions (https://www.excelbanter.com/excel-worksheet-functions/)
-   -   Looking up first and last (https://www.excelbanter.com/excel-worksheet-functions/242753-looking-up-first-last.html)

drc

Looking up first and last
 
I have city names and postal codes. There are several postal codes for each
city.
Cities are in colum V and Postal codes are in column W. Example:
there are 210 different postal codes for High River. these postal codes are
usually in sequencial order. Using Vlookup I can get the first instance of
the postal code but I can't figure out how to get the last instance. I would
then be able to say that High River has a postal code range from X to XX.
Can anyone help.

new1@[no/spam]realce.net

Looking up first and last
 
On 15 sep, 22:49, DRC wrote:
I have city names and postal codes. There are several postal codes for each
city.
Cities are in colum V and Postal codes are in column W. *Example:
there are 210 different postal codes for High River. these postal codes are
usually in sequencial order. *Using Vlookup I can get the first instance of
the postal code but I can't figure out how to get the last instance. *I would
then be able to say that High River has a postal code range from X to XX. *
Can anyone help.


Hello,

Just an idea, if postal codes are in a sequencial order...And if
you're postal codes are all in numeric format, maybe you could try
making a pivot table with city names in column and min and max postal
codes as data.

Hope it helps.

new1

T. Valko

Looking up first and last
 
Try this for the *last* instance:

=LOOKUP(2,1/(V1:V100="High River"),W1:W100)

--
Biff
Microsoft Excel MVP


"DRC" wrote in message
...
I have city names and postal codes. There are several postal codes for each
city.
Cities are in colum V and Postal codes are in column W. Example:
there are 210 different postal codes for High River. these postal codes
are
usually in sequencial order. Using Vlookup I can get the first instance
of
the postal code but I can't figure out how to get the last instance. I
would
then be able to say that High River has a postal code range from X to XX.
Can anyone help.




Ashish Mathur[_2_]

Looking up first and last
 
Hi,

You can use this array formula (Ctrl+Shift+Enter) for the last occurrence

=INDEX($C$5:$D$12,SMALL(IF($C$5:$C$12=$C$14,ROW($C $5:$C$12)-ROW($D$4)),COUNTIF($C$5:$C$12,C14)),2)

C14 holds the city. C5:D12 has the city in column C and postal codes in
column D. Row 5 has the headings.

--
Regards,

Ashish Mathur
Microsoft Excel MVP
www.ashishmathur.com

"DRC" wrote in message
...
I have city names and postal codes. There are several postal codes for
each
city.
Cities are in colum V and Postal codes are in column W. Example:
there are 210 different postal codes for High River. these postal codes
are
usually in sequencial order. Using Vlookup I can get the first instance
of
the postal code but I can't figure out how to get the last instance. I
would
then be able to say that High River has a postal code range from X to XX.
Can anyone help.



drc

Looking up first and last
 
In Canada we use a Alph numerical postal code system, I tried the Pivot table
min/max and all it returned was zero's . Thanks anyways.

" wrote:

On 15 sep, 22:49, DRC wrote:
I have city names and postal codes. There are several postal codes for each
city.
Cities are in colum V and Postal codes are in column W. Example:
there are 210 different postal codes for High River. these postal codes are
usually in sequencial order. Using Vlookup I can get the first instance of
the postal code but I can't figure out how to get the last instance. I would
then be able to say that High River has a postal code range from X to XX.
Can anyone help.


Hello,

Just an idea, if postal codes are in a sequencial order...And if
you're postal codes are all in numeric format, maybe you could try
making a pivot table with city names in column and min and max postal
codes as data.

Hope it helps.

new1


drc

Looking up first and last
 
Thanks. This worked for the last instance. Great. I have done a lot with
lookup's and vlookups. I have never used the array lookup.
I don't understand the lookup 2 and then what are you dividing by 1??

"T. Valko" wrote:

Try this for the *last* instance:

=LOOKUP(2,1/(V1:V100="High River"),W1:W100)

--
Biff
Microsoft Excel MVP


"DRC" wrote in message
...
I have city names and postal codes. There are several postal codes for each
city.
Cities are in colum V and Postal codes are in column W. Example:
there are 210 different postal codes for High River. these postal codes
are
usually in sequencial order. Using Vlookup I can get the first instance
of
the postal code but I can't figure out how to get the last instance. I
would
then be able to say that High River has a postal code range from X to XX.
Can anyone help.





drc

Looking up first and last
 
Thanks for the respones, I haven't tried this yet but plan to.

"Ashish Mathur" wrote:

Hi,

You can use this array formula (Ctrl+Shift+Enter) for the last occurrence

=INDEX($C$5:$D$12,SMALL(IF($C$5:$C$12=$C$14,ROW($C $5:$C$12)-ROW($D$4)),COUNTIF($C$5:$C$12,C14)),2)

C14 holds the city. C5:D12 has the city in column C and postal codes in
column D. Row 5 has the headings.

--
Regards,

Ashish Mathur
Microsoft Excel MVP
www.ashishmathur.com

"DRC" wrote in message
...
I have city names and postal codes. There are several postal codes for
each
city.
Cities are in colum V and Postal codes are in column W. Example:
there are 210 different postal codes for High River. these postal codes
are
usually in sequencial order. Using Vlookup I can get the first instance
of
the postal code but I can't figure out how to get the last instance. I
would
then be able to say that High River has a postal code range from X to XX.
Can anyone help.



T. Valko

Looking up first and last
 
Let's use this example to demonstrate how this works:

...........A.............B
1.....header.....header
2........HR...........10
3........xx.............12
4........HR...........15
5........aa.............16

Return the value in column B that corresponds to the *last instance* of HR
in
column A.

=LOOKUP(2,1/(A2:A5="HR"),B2:B5)

This expression will return an array of either TRUE or FALSE:

(A2:A5=HR)

A2 = HR = HR = TRUE
A3 = xx = HR = FALSE
A4 = HR = HR = TRUE
A5 = aa = HR = FALSE

We then use the divison operation to coerce those logical values to numbers:

A2 = 1 / TRUE = 1
A3 = 1 / FALSE = #DIV/0!
A4 = 1 / TRUE = 1
A5 = 1 / FALSE = #DIV/0!

At this point the formula looks like this:

=LOOKUP(2,{1;#DIV/0!;1;#DIV/0!),B2:B5)

The way that LOOKUP works is if the lookup_value is greater than all the
values in the lookup_vector it will match the *last* value in the
lookup_vector that is less than the lookup_value.

The *last* value in the lookup_vector that is less than the lookup_value is
the second 1. The #DIV/0! errors are ignored. We use a lookup_value of 2
because we know that the result of this expression:

1/(A2:A5=HR)

will not return a value greater than 1.

This is how that would look:

...........A.............B
1.....header.....header
2........1.............10
3...#DIV/0!.......12
4........1.............15
5...#DIV/0!.......16

So, the *last instance* of HR was in A4. Return the corresponding value from
B4.

=LOOKUP(2,1/(A2:A5=HR),B2:B5) = 15



exp101
--
Biff
Microsoft Excel MVP


"DRC" wrote in message
...
Thanks. This worked for the last instance. Great. I have done a lot with
lookup's and vlookups. I have never used the array lookup.
I don't understand the lookup 2 and then what are you dividing by 1??

"T. Valko" wrote:

Try this for the *last* instance:

=LOOKUP(2,1/(V1:V100="High River"),W1:W100)

--
Biff
Microsoft Excel MVP


"DRC" wrote in message
...
I have city names and postal codes. There are several postal codes for
each
city.
Cities are in colum V and Postal codes are in column W. Example:
there are 210 different postal codes for High River. these postal codes
are
usually in sequencial order. Using Vlookup I can get the first
instance
of
the postal code but I can't figure out how to get the last instance. I
would
then be able to say that High River has a postal code range from X to
XX.
Can anyone help.








All times are GMT +1. The time now is 02:33 PM.

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