Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
DiscussionsAccessExcelInfoPathOutlookPowerPointPublisherWord
DirectoryUser Groups
Related Topics
Outlook ExpressInternet ExplorerWindowsMS Server ProductsMore Topics ...

MS Office Forum / Excel / New Users / January 2006

Tip: Looking for answers? Try searching our database.

Average first 3 numbers in column e.g. 130 in 130/82

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
gadmire - 27 Jan 2006 19:30 GMT
I am trying to obtain an average of blood pressure over a period of time.  
The individual entries are in a single column but are in a combined format
(e.g. 130/82).  I need to parse each of the two numbers and arrive at an
average of all entries in the column.  I have searched help because I thought
I had seen some reference to the selecting only a portion of a number on a
prior search.  Unfortunately, I could not come across it again.  Thanks for
any help
CLR - 27 Jan 2006 19:47 GMT
You can  highlight the column and then do Data > TextToColumns, and use the
/ as the delimiter.........this will separate the diastolic and systolic
numbers each into their own column.........then just average each column
using the =AVERAGE(range) formula.

Vaya con Dios,
Chuck, CABGx3

> I am trying to obtain an average of blood pressure over a period of time.  
> The individual entries are in a single column but are in a combined format
[quoted text clipped - 3 lines]
> prior search.  Unfortunately, I could not come across it again.  Thanks for
> any help
gadmire - 27 Jan 2006 20:03 GMT
Chuck:

My only problem with the below solution is that I have multiple columns next
to the column I want to average.  By using the below method, I would need to
move data in many other columns to add the new column (resulting from the
split of the numbers).  This would be somewhat impractical for me.

I seem to recall a formula that conditions either an average or sum that
simply takes a specified number of spaces from an entry and calculates the
result using, say, only the first three digits.  If I could find this
formula, it would eliminate the need to create new columns.

Does the above ring any bells to you?

Que le vaya bien,

Gary

> You can  highlight the column and then do Data > TextToColumns, and use the
> / as the delimiter.........this will separate the diastolic and systolic
[quoted text clipped - 11 lines]
> > prior search.  Unfortunately, I could not come across it again.  Thanks for
> > any help
Domenic - 27 Jan 2006 20:51 GMT
If your first number is always three digits and your second two digits,
try...

=AVERAGE(IF(A1:A100<>"",LEFT(A1:A100,3)+0))

and

=AVERAGE(IF(A1:A100<>"",RIGHT(A1:A100,2)+0))

Otherwise, try...

=AVERAGE(IF(A1:A100<>"",MID(A1:A100,1,FIND("/",A1:A100)-1)+0))

and

=AVERAGE(IF(A1:A100<>"",MID(A1:A100,FIND("/",A1:A100)+1,1024)+0))

These formulas need to be confirmed with CONTROL+SHIFT+ENTER, not just
ENTER.

Hope this helps!

> Chuck:
>
[quoted text clipped - 34 lines]
> > > for
> > > any help
Bob Phillips - 27 Jan 2006 21:13 GMT
Reading between the lines

=ROUND(AVERAGE(IF(A1:A100<>"",--LEFT(A1:A100,3))),0)&"/"&ROUND(AVERAGE(IF(A1
:A100<>"",--RIGHT(A1:A100,2))),0)

which is an array formula, it should be committed with Ctrl-Shift-Enter, not
just Enter.

--

HTH

Bob Phillips

(remove nothere from the email address if mailing direct)

> I am trying to obtain an average of blood pressure over a period of time.
> The individual entries are in a single column but are in a combined format
[quoted text clipped - 3 lines]
> prior search.  Unfortunately, I could not come across it again.  Thanks for
> any help
gadmire - 27 Jan 2006 22:01 GMT
Bob:

Thanks for the recommendation.  

It worked perfectly after I started the formula at B3 ( B1 and B2 contained
text which prevented correct operation of the formula).

Bob

> Reading between the lines
>
[quoted text clipped - 21 lines]
> for
> > any help
Bob Phillips - 28 Jan 2006 13:15 GMT
You could try this to cater for that

=ROUND(AVERAGE(IF((B1:B100<>"")*(ISNUMBER(--LEFT(B1:B100,3))),--LEFT(B1:B100
,3))),0)&"/"&
ROUND(AVERAGE(IF((B1:B100<>"")*(ISNUMBER(--LEFT(B1:B100,2))),--RIGHT(B1:B100
,2))),0)

still as an array

--

HTH

Bob Phillips

(remove nothere from the email address if mailing direct)

> Bob:
>
[quoted text clipped - 6 lines]
>
> > Reading between the lines

=ROUND(AVERAGE(IF(A1:A100<>"",--LEFT(A1:A100,3))),0)&"/"&ROUND(AVERAGE(IF(A1
> > :A100<>"",--RIGHT(A1:A100,2))),0)
> >
[quoted text clipped - 18 lines]
> > for
> > > any help
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.