i didnt review the formula closely ,but i think you would need some mapping
kind of sutff to avoid many  IF() formulas.


On Fri, Dec 27, 2013 at 8:03 AM, Brett Manning <brettmannin...@gmail.com>wrote:

> Hello,
>
> As requested, please find attached example spreadsheet.  The formula's
> concerned are in the metadata worksheet starting in U2.  The spreadsheet is
> only going out 2 days but normally it would be 30 days.
>
> Just looking to see if the formula can be simplified in any way.
>
> Thanks,
> Brett
>
>
> On Tuesday, December 24, 2013 12:07:38 PM UTC, Tariq Aziz wrote:
>
>> please share the worksheet
>>
>> On 24 December 2013 15:08, Brett Manning <brettma...@gmail.com> wrote:
>> > Hello,
>> >
>> > I have created a spreadsheet which looks at various different
>> worksheets in
>> > the same spreadsheet in order to return the data to one central
>> worksheet.
>> > I have then created a pivot table of this data.  My formula below
>> contains a
>> > lot of If's and Index / Match.  The formula works but I was wondering
>> if
>> > there is a better way to do this?  I have 2600 rows and 30 columns, the
>> > formula below is an example to return the data for day 1.  The same
>> formula
>> > is used by day 2 but day 1 is replaced with day 2.  The spreadsheet is
>> 22MB
>> > and it quite slow due to the number of calculations.  I was just
>> wondering
>> > if anyone had any idea's?
>> >
>> > Thanks in advance.
>> >
>> > Brett
>> >
>> >
>> >
>> >
>> >
>> >
>> > =IF($O2="Balance",SUMIF($C:$C,$C2,U:U),IF(AND($O2="Cash Forecast
>> > Payment",(ISNA(INDEX(APM_CF_DAY1,MATCH($C2,APM_CF_NAME,0))))),0,IF(AND($O2="Cash
>>
>> > Forecast
>> > Payment",$N2="No"),INDEX(APM_CF_DAY1,MATCH($C2,APM_CF_NAME,0)),IF(AND($O2="Cash
>>
>> > Forecast
>> > Payment",$K2="M",$N2="Yes"),INDEX(APM_CF_DAY1,MATCH($C2,
>> APM_CF_NAME,0))*INDEX(ExchangeRate,MATCH(METADATA!$
>> G2,CurrencyRate,0)),IF(AND($O2="Cash
>> > Forecast
>> > Payment",$K2="D",$N2="Yes"),INDEX(APM_CF_DAY1,MATCH($C2,
>> APM_CF_NAME,0))/INDEX(ExchangeRate,MATCH(METADATA!$
>> G2,CurrencyRate,0)),IF(AND($O2="Cash
>> > Forecast
>> > Receipt",(ISNA(INDEX(APM_CF_REC_DAY1,MATCH($C2,APM_CF_REC_NAME,0))))),0,IF(AND($O2="Cash
>>
>> > Forecast
>> > Receipt",$N2="No"),INDEX(APM_CF_REC_DAY1,MATCH($C2,APM_CF_REC_NAME,0)),IF(AND($O2="Cash
>>
>> > Forecast
>> > Receipt",$K2="M",$N2="Yes"),INDEX(APM_CF_REC_DAY1,MATCH($
>> C2,APM_CF_REC_NAME,0))*INDEX(ExchangeRate,MATCH(METADATA!$
>> G2,CurrencyRate,0)),IF(AND($O2="Cash
>> > Forecast
>> > Receipt",$K2="D",$N2="Yes"),INDEX(APM_CF_REC_DAY1,MATCH($
>> C2,APM_CF_REC_NAME,0))/INDEX(ExchangeRate,MATCH(METADATA!$
>> G2,CurrencyRate,0)),IF(AND($O2="Treasury",(ISNA(INDEX(APM_
>> TT_DAY1,MATCH($C2,APM_TT_NAME,0))))),0,IF(AND($O2="Treasury"
>> ,$N2="No"),INDEX(APM_TT_DAY1,MATCH($C2,APM_TT_NAME,0)),IF(
>> AND($O2="Treasury",$K2="M",$N2="Yes"),INDEX(APM_TT_DAY1,
>> MATCH($C2,APM_TT_NAME,0))*INDEX(ExchangeRate,MATCH(
>> METADATA!$G2,CurrencyRate,0)),IF(AND($O2="Treasury",$K2="D",
>> $N2="Yes"),INDEX(APM_TT_DAY1,MATCH($C2,APM_TT_NAME,0))/
>> INDEX(ExchangeRate,MATCH(METADATA!$G2,CurrencyRate,0)),IF(AND(OR($O2="Treasury
>>
>> > LoanDep",$O2="Treasury LoanDep
>> > Internal"),Data!$F$2="No"),0,IF(AND($O2="Treasury
>> > LoanDep",(ISNA(INDEX(APM_TT_LD_DAY1,MATCH($C2,APM_TT_LD_
>> NAME,0))))),0,IF(AND($O2="Treasury
>> > LoanDep",$N2="No"),INDEX(APM_TT_LD_DAY1,MATCH($C2,APM_TT_
>> LD_NAME,0)),IF(AND($O2="Treasury
>> > LoanDep",$K2="M",$N2="Yes"),INDEX(APM_TT_LD_DAY1,MATCH($
>> C2,APM_TT_LD_NAME,0))*INDEX(ExchangeRate,MATCH(METADATA!$
>> G2,CurrencyRate,0)),IF(AND($O2="Treasury
>> > LoanDep",$K2="D",$N2="Yes"),INDEX(APM_TT_LD_DAY1,MATCH($
>> C2,APM_TT_LD_NAME,0))/INDEX(ExchangeRate,MATCH(METADATA!$
>> G2,CurrencyRate,0)),IF(AND($O2="Treasury
>> > LoanDep
>> > Internal",(ISNA(INDEX(APM_LOANDEP_PARTYA_INTERNAL_DAY1,
>> MATCH($C2,APM_LOANDEP_PARTYA_INTERNAL_NAME,0))))),0,IF(AND($O2="Treasury
>> > LoanDep
>> > Internal",$N2="No"),INDEX(APM_LOANDEP_PARTYA_INTERNAL_DAY1,
>> MATCH($C2,APM_LOANDEP_PARTYA_INTERNAL_NAME,0)),IF(AND($O2="Treasury
>> > LoanDep
>> > Internal",$K2="M",$N2="Yes"),INDEX(APM_LOANDEP_PARTYA_
>> INTERNAL_DAY1,MATCH($C2,APM_LOANDEP_PARTYA_INTERNAL_NAME,
>> 0))*INDEX(ExchangeRate,MATCH(METADATA!$G2,CurrencyRate,0)),IF(AND($O2="Treasury
>>
>> > LoanDep
>> > Internal",$K2="D",$N2="Yes"),INDEX(APM_LOANDEP_PARTYA_
>> INTERNAL_DAY1,MATCH($C2,APM_LOANDEP_PARTYA_INTERNAL_NAME,
>> 0))/INDEX(ExchangeRate,MATCH(METADATA!$G2,CurrencyRate,0)),IF(AND($O2="Treasury
>>
>> > LoanDep
>> > External",(ISNA(INDEX(APM_LOANDEP_PARTYA_EXTERNAL_DAY1,
>> MATCH($C2,APM_LOANDEP_PARTYA_EXTERNAL_NAME,0))))),0,IF(AND($O2="Treasury
>> > LoanDep
>> > External",$N2="No"),INDEX(APM_LOANDEP_PARTYA_EXTERNAL_DAY1,
>> MATCH($C2,APM_LOANDEP_PARTYA_EXTERNAL_NAME,0)),IF(AND($O2="Treasury
>> > LoanDep
>> > External",$K2="M",$N2="Yes"),INDEX(APM_LOANDEP_PARTYA_
>> EXTERNAL_DAY1,MATCH($C2,APM_LOANDEP_PARTYA_EXTERNAL_NAME,
>> 0))*INDEX(ExchangeRate,MATCH(METADATA!$G2,CurrencyRate,0)),IF(AND($O2="Treasury
>>
>> > LoanDep
>> > External",$K2="D",$N2="Yes"),INDEX(APM_LOANDEP_PARTYA_
>> EXTERNAL_DAY1,MATCH($C2,APM_LOANDEP_PARTYA_EXTERNAL_NAME,
>> 0))/INDEX(ExchangeRate,MATCH(METADATA!$G2,CurrencyRate,0)),
>> IF(AND($O2="MISC",$N2="No"),SUMIF(MiscEntries_AccountClass,"
>> > "&$A2,MiscEntries_Day1),IF(AND($O2="Misc",$N2="Yes",$K2="
>> M"),SUMIF(MiscEntries_AccountClass,$C2,MiscEntries_
>> Day1)*INDEX(ExchangeRate,MATCH(METADATA!$G2,CurrencyRate,0)),SUMIF(
>> MiscEntries_AccountClass,$C2,MiscEntries_Day1)/INDEX(
>> ExchangeRate,MATCH(METADATA!$G2,CurrencyRate,0))))))))))))))))))))))))))))))
>>
>> >
>> > --
>> > Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna be?
>> It’s
>> > =TIME(2,DO:IT,N:OW) ! Join official Facebook page of this forum @
>> > https://www.facebook.com/discussexcel
>> >
>> > FORUM RULES
>> >
>> > 1) Use concise, accurate thread titles. Poor thread titles, like Please
>> > Help, Urgent, Need Help, Formula Problem, Code Problem, and Need Advice
>> will
>> > not get quick attention or may not be answered.
>> > 2) Don't post a question in the thread of another member.
>> > 3) Don't post questions regarding breaking or bypassing any security
>> > measure.
>> > 4) Acknowledge the responses you receive, good or bad.
>> > 5) Jobs posting is not allowed.
>> > 6) Sharing copyrighted material and their links is not allowed.
>> >
>> > NOTE : Don't ever post confidential data in a workbook. Forum owners
>> and
>> > members are not responsible for any loss.
>> > ---
>> > You received this message because you are subscribed to the Google
>> Groups
>> > "MS EXCEL AND VBA MACROS" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an
>> > email to excel-macros...@googlegroups.com.
>> > To post to this group, send email to excel-...@googlegroups.com.
>> > Visit this group at http://groups.google.com/group/excel-macros.
>> > For more options, visit https://groups.google.com/groups/opt_out.
>>
>  --
> Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna be? It’s
> =TIME(2,DO:IT,N:OW) ! Join official Facebook page of this forum @
> https://www.facebook.com/discussexcel
>
> FORUM RULES
>
> 1) Use concise, accurate thread titles. Poor thread titles, like Please
> Help, Urgent, Need Help, Formula Problem, Code Problem, and Need Advice
> will not get quick attention or may not be answered.
> 2) Don't post a question in the thread of another member.
> 3) Don't post questions regarding breaking or bypassing any security
> measure.
> 4) Acknowledge the responses you receive, good or bad.
> 5) Jobs posting is not allowed.
> 6) Sharing copyrighted material and their links is not allowed.
>
> NOTE : Don't ever post confidential data in a workbook. Forum owners and
> members are not responsible for any loss.
> ---
> You received this message because you are subscribed to the Google Groups
> "MS EXCEL AND VBA MACROS" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to excel-macros+unsubscr...@googlegroups.com.
> To post to this group, send email to excel-macros@googlegroups.com.
> Visit this group at http://groups.google.com/group/excel-macros.
> For more options, visit https://groups.google.com/groups/opt_out.
>



-- 
Regards
Rajan verma
+91 7838100659

-- 
Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna be? It’s 
=TIME(2,DO:IT,N:OW) ! Join official Facebook page of this forum @ 
https://www.facebook.com/discussexcel

FORUM RULES

1) Use concise, accurate thread titles. Poor thread titles, like Please Help, 
Urgent, Need Help, Formula Problem, Code Problem, and Need Advice will not get 
quick attention or may not be answered.
2) Don't post a question in the thread of another member.
3) Don't post questions regarding breaking or bypassing any security measure.
4) Acknowledge the responses you receive, good or bad.
5) Jobs posting is not allowed.
6) Sharing copyrighted material and their links is not allowed.

NOTE  : Don't ever post confidential data in a workbook. Forum owners and 
members are not responsible for any loss.
--- 
You received this message because you are subscribed to the Google Groups "MS 
EXCEL AND VBA MACROS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to excel-macros+unsubscr...@googlegroups.com.
To post to this group, send email to excel-macros@googlegroups.com.
Visit this group at http://groups.google.com/group/excel-macros.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to