Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 64
Default Slow Calculation Index and Match Array Formula.

I have a worksheet that uses 3 index and match array formulas
referencing two different worksheets (JNP) and (Shipped) in the same
workbook to update its information.

These referencing worksheets (JNP) and (Shipped) have 7 columns and
could have up to 3000 rows of information. My problem is whenever
information is changed in (JNP) and (Shipped) its takes a long time
for excel to update the information my main worksheet, is there
anything that can be done to speed up the calculation. I've seen it
take up to 5 minutes to finish calculation during which time excel is
basically unusable. Here are my formulas. Which can go down at most
150 rows. For Now.....



=IF(ISNA(MATCH(1,(TRIM('JNP'!$A$1:$A$2988)=TRIM(F8 ))*(TRIM('JNP'!$D$1:$D$2988)=TRIM(K8)),0)),"
",INDEX('Jets Jobs in
Process'!$C$1:$C$2988,MATCH(1,(TRIM('JNP'!$A$1:$A$ 2988)=TRIM(F8))*(TRIM('JNP'!$D$1:$D$2988)=TRIM(K8) ),0)))

=IF(ISNA(MATCH(1,(TRIM(Shipped!$B$1:$B$3000)=TRIM( F8))*(TRIM(Shipped!$D$1:$D$3000)=TRIM(K8)),0)),"No t
Shipped",INDEX(Shipped!$C$1:$C$3000,MATCH(1,(TRIM( Shipped!$B$1:$B$3000)=TRIM(F8))*(TRIM(Shipped!$D$1 :$D$3000)=TRIM(K8)),0)))

=IF(ISNA(MATCH(1,(TRIM(Shipped!$B$1:$B$3000)=TRIM( F8))*(TRIM(Shipped!$D$1:$D$3000)=TRIM(K8)),0)),"No t
Shipped",INDEX(Shipped!$D$1:$D$3000,MATCH(1,(TRIM( Shipped!$B$1:$B$3000)=TRIM(F8))*(TRIM(Shipped!$D$1 :$D$3000)=TRIM(K8)),0)))


Thanks Little Penny
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 10
Default Slow Calculation Index and Match Array Formula.

You are repeating work in the TRIM statements. Possibly doing the trim on
all 3000 rows for each row you are trying to match. You are also repeating
work in the Match.
You must calculate intermediate results once and save them to intermediate
ranges.

Suggestion: Bring over TRIM('JNP'!$A$1:$A$3000) once into another range
"TrimmedA" in the matching worksheet. Likewise for TrimmedD
Save the result {TrimmedA=Trim(Fx:Fy)}into TrimA01.
Save the result of TrimA01*TrimmedD into TrimRow.
Finally save the Match into a range: MATCH(1,(TRimRow=TRIM(K8)),0) --
range MatchRow
Now your formula becomes: =IF(ISNA(Matchrow),"
",INDEX('Jets Jobs in Process'!$C$1:$C$2988,Matchrow,1)

-Stephen Rasey
Houston

"Little Penny" wrote in message
...
I have a worksheet that uses 3 index and match array formulas
referencing two different worksheets (JNP) and (Shipped) in the same
workbook to update its information.




Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Array formula with index + match Sena Excel Worksheet Functions 5 April 1st 07 06:06 AM
Index and Match Array formula Graham Haughs Excel Worksheet Functions 4 February 16th 06 01:51 AM
Looking for formula index/match-type that returns an array Tom Excel Worksheet Functions 1 April 1st 05 10:05 PM
How to add in an array formula if iisna index match taxmom Excel Worksheet Functions 4 March 15th 05 01:51 PM
Array Formula Index Match formulas in VBA problem hawkit Excel Programming 1 April 30th 04 05:53 PM


All times are GMT +1. The time now is 11:25 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"