I have a long formula and would like to create a macro or a function in order to calculate it. Thing is, is that I have no clue as to how to even begin. If anyone can help here is the formula: =IF(C6="CIUDAD",IF(G6=1,'Tabla Eficiencia'!$D$26,IF(G6>1,'Tabla Eficiencia'!$D$25-((('Tabla Eficiencia'!$B$25-G6)*100)*$E$25),IF(G6>0.99,'Tabla Eficiencia'!$D$24-((('Tabla Eficiencia'!$B$24-G6)*100)*$E$24),IF(G6>0.98,'Tabla Eficiencia'!$D$23-((('Tabla Eficiencia'!$B$23-G6)*100)*$E$23),IF(G6>0.97,'Tabla Eficiencia'!$D$22-((('Tabla Eficiencia'!$B$22-G6)*100)*$E$22),IF(G6>0.96,'Tabla Eficiencia'!$D$21-((('Tabla Eficiencia'!$B$21-G6)*100)*$E$21),IF(G6>0.95,'Tabla Eficiencia'!$D$20-((('Tabla Eficiencia'!$B$20-G6)*100)*$E$20),IF(G6>0.94,'Tabla Eficiencia'!$D$19-((('Tabla Eficiencia'!$B$19-G6)*100)*$E$19),IF(G6>0.93,'Tabla Eficiencia'!$D$18-((('Tabla Eficiencia'!$B$18-G6)*100)*$E$18),IF(G6>0.92,'Tabla Eficiencia'!$D$17-((('Tabla Eficiencia'!$B$17-G6)*100)*$E$17),IF(G6>0.91,'Tabla Eficiencia'!$D$16-((('Tabla Eficiencia'!$B$16-G6)*100)*$E$16),IF(G6>0.9,'Tabla Eficiencia'!$D$15-((('Tabla Eficiencia'!$B$15-G6)*100)*$E$15),IF(G6>0.89,'Tabla Eficiencia'!$D$14-((('Tabla Eficiencia'!$B$14-G6)*100)*$E$14),IF(G6>0.88,'Tabla Eficiencia'!$D$13-((('Tabla Eficiencia'!$B$13-G6)*100)*$E$13),IF(G6>0.87,'Tabla Eficiencia'!$D$12-((('Tabla Eficiencia'!$B$12-G6)*100)*$E$12),IF(G6>0.86,'Tabla Eficiencia'!$D$11-((('Tabla Eficiencia'!$B$11-G6)*100)*$E$11),IF(G6>0.85,'Tabla Eficiencia'!$D$10-((('Tabla Eficiencia'!$B$10-G6)*100)*$E$10),IF(G6>0.84,'Tabla Eficiencia'!$D$9-((('Tabla Eficiencia'!$B$9-G6)*100)*$E$9),IF(G6>0.83,'Tabla Eficiencia'!$D$8-((('Tabla Eficiencia'!$B$8-G6)*100)*$E$8),IF(G6>0.82,'Tabla Eficiencia'!$D$7-((('Tabla Eficiencia'!$B$7-G6)*100)*$E$7),IF(G6>0.81,'Tabla Eficiencia'!$D$6-((('Tabla Eficiencia'!$B$6-G6)*100)*$E$6),IF(G6>0.8,'Tabla Eficiencia'!$D$5-((('Tabla Eficiencia'!$B$5-G6)*100)*$E$5))))))))))))))))))))))),IF(G6=1,'Tabla Eficiencia'!$L$26,IF(G6>1,'Tabla Eficiencia'!$L$25-((('Tabla Eficiencia'!$J$25-G6)*100)*$M$25),IF(G6>0.99,'Tabla Eficiencia'!$L$24-((('Tabla Eficiencia'!$J$24-G6)*100)*$M$24),IF(G6>0.98,'Tabla Eficiencia'!$L$23-((('Tabla Eficiencia'!$J$23-G6)*100)*$M$23),IF(G6>0.97,'Tabla Eficiencia'!$L$22-((('Tabla Eficiencia'!$J$22-G6)*100)*$M$22),IF(G6>0.96,'Tabla Eficiencia'!$L$21-((('Tabla Eficiencia'!$J$21-G6)*100)*$M$21),IF(G6>0.95,'Tabla Eficiencia'!$L$20-((('Tabla Eficiencia'!$J$20-G6)*100)*$M$20),IF(G6>0.94,'Tabla Eficiencia'!$L$19-((('Tabla Eficiencia'!$J$19-G6)*100)*$M$19),IF(G6>0.93,'Tabla Eficiencia'!$L$18-((('Tabla Eficiencia'!$J$18-G6)*100)*$M$18),IF(G6>0.92,'Tabla Eficiencia'!$L$17-((('Tabla Eficiencia'!$J$17-G6)*100)*$M$17),IF(G6>0.91,'Tabla Eficiencia'!$L$16-((('Tabla Eficiencia'!$J$16-G6)*100)*$M$16),IF(G6>0.9,'Tabla Eficiencia'!$L$15-((('Tabla Eficiencia'!$J$15-G6)*100)*$M$15),IF(G6>0.89,'Tabla Eficiencia'!$L$14-((('Tabla Eficiencia'!$J$14-G6)*100)*$M$14),IF(G6>0.88,'Tabla Eficiencia'!$L$13-((('Tabla Eficiencia'!$J$13-G6)*100)*$M$13),IF(G6>0.87,'Tabla Eficiencia'!$L$12-((('Tabla Eficiencia'!$J$12-G6)*100)*$M$12),IF(G6>0.86,'Tabla Eficiencia'!$L$11-((('Tabla Eficiencia'!$J$11-G6)*100)*$M$11),IF(G6>0.85,'Tabla Eficiencia'!$L$10-((('Tabla Eficiencia'!$J$10-G6)*100)*$M$10),IF(G6>0.84,'Tabla Eficiencia'!$L$9-((('Tabla Eficiencia'!$J$9-G6)*100)*$M$9),IF(G6>0.83,'Tabla Eficiencia'!$L$8-((('Tabla Eficiencia'!$J$8-G6)*100)*$M$8),IF(G6>0.82,'Tabla Eficiencia'!$L$7-((('Tabla Eficiencia'!$J$7-G6)*100)*$M$7),IF(G6>0.81,'Tabla Eficiencia'!$L$6-((('Tabla Eficiencia'!$J$6-G6)*100)*$M$6),IF(G6>0.8,'Tabla Eficiencia'!$L$5-((('Tabla Eficiencia'!$J$5-G6)*100)*$M$5)))))))))))))))))))))))) Code (markup): The C6 and G6 values need to be able to change to whichever cell the function is being ran in. Example if the function were to be ran in cell H7 then it would C7,G7 or if it were ran in cell H8 then C8,G8, etc....