Thread: Typing vs VBA
View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Jay Jay is offline
external usenet poster
 
Posts: 671
Default Typing vs VBA

I think the problem dues to the fact that Excel cells only allow certain
numbers of IF in a formula, like 7. If you have more than 7 nested IF, it is
better use VBA to compute. Jay

"JG" wrote:

I have a 9-column spreadsheet where Col H is an IF that points to a pivot
table on a separate worksheet (same .xls file, though).

Column I is an IF that first points to the cell in Col H and then pulls
additional data from the same pivot table.

I can key the function in Col I and it works without a problem. I am trying
to get a macro recorded to enter the function and I get an Unable to Record
dialog when I key in the function with the macro recorder turned on.

Ultimately, the function I want to get into I2 is this:

=IF(INDIRECT("RC8", FALSE)="Auto No Run", IF(GETPIVOTDATA("Comp Status",
TCCompositionAnalysis!$A$3, "TC ID", INDIRECT("RC1", FALSE), "Comp Status",
"Error", "ManAuto", "Auto"), "Auto Error", IF(GETPIVOTDATA("Comp Status",
TCCompositionAnalysis!$A$3, "TC ID", INDIRECT("RC1", FALSE), "Comp Status",
"UnDev", "ManAuto", "Auto")0, "Auto UnDev", IF(GETPIVOTDATA("Comp Status",
TCCompositionAnalysis!$A$3, "TC ID", INDIRECT("RC1", FALSE), "Comp Status",
"Maint", "ManAuto", "Auto")0, "Auto Maint", "Eval This Row"))),
IF(INDIRECT("RC8", FALSE)="Run Auto", "", ""))

So after repeated attempts to get this into the cell... I've keyed it into
the editor with double double quotes for the editor.

1. =IF(INDIRECT("RC8", FALSE)="Auto No Run", "XXXX", "ZZZZ")

2. XXXX: IF(GETPIVOTDATA("Comp Status", TCCompositionAnalysis!$A$3,"TC
ID", INDIRECT("RC1", FALSE), "Comp Status", "Error", "ManAuto", "Auto"),
"Auto Error", "AAAA")

3. AAAA: IF(GETPIVOTDATA("Comp Status", TCCompositionAnalysis!$A$3,"TC
ID", INDIRECT("RC1", FALSE), "Comp Status", "UnDev", "ManAuto", "Auto"),
"Auto Script", "BBBB")

4. BBBB: IF(GETPIVOTDATA("Comp Status", TCCompositionAnalysis!$A$3,"TC
ID", INDIRECT("RC1", FALSE), "Comp Status", "Maint", "ManAuto", "Auto"),
"Auto Maint", "???")

5. ZZZZ: IF(INDIRECT("RC8", FALSE)="Run Auto", "", ""))

I got the first 2 pieces in without throwing the error. But once I replace
"AAAA" with the piece of function... Unable to Record.

Before I MacGuyver a different solution that I have in mind.... can anyone
shed some light on why this is happening? Thanks.