Generated by Power Migrate 0.1.0a1. Workbook SHA-256 d2a7b89598fa1cf428dd9b55a51598c73cba8749b6527613cf279f1d8c2f4f0e. Generated package pricing_calculator.
641 of 641 checkable formula cells reconciled (100.0%). 0 mismatched, 0 were not converted (listed below with reasons), 0 had no stored value to check against.
| Status | Formula cells | Share of all | Final outputs |
|---|---|---|---|
| Match | 641 | 100.0% | 97 |
| Mismatch | 0 | 0.0% | 0 |
| Not converted (stub) | 0 | 0.0% | 0 |
| No reference value | 0 | 0.0% | 0 |
| Total | 641 | 100% | 97 |
The generated code was run on the workbook's own input values (139 input cells) and every formula cell was compared with the value Excel stored in the file. Numbers match when |actual - expected| <= max(1e-09, 1e-09 * max(|actual|, |expected|)); text must match exactly; error values must have the same code. Run time 0.2s.
This report shows tested equivalence on the inputs it ran, not a guarantee for other inputs. Generated input variations are not yet part of this version.
| Sheet | Formulas | Match | Mismatch | Not converted | No reference | Match rate |
|---|---|---|---|---|---|---|
| Inputs | 6 | 6 | 0 | 0 | 0 | 100.0% |
| RateCard | 4 | 4 | 0 | 0 | 0 | 100.0% |
| Schedule | 578 | 578 | 0 | 0 | 0 | 100.0% |
| Economics | 13 | 13 | 0 | 0 | 0 | 100.0% |
| Sensitivity | 32 | 32 | 0 | 0 | 0 | 100.0% |
| Summary | 8 | 8 | 0 | 0 | 0 | 100.0% |
None.
None: every formula was converted.
Formula cells that nothing else in the workbook reads: the numbers people actually look at.
| Cell | Formula | Excel stored | Generated code | Status |
|---|---|---|---|---|
| Inputs!B18 | =NETWORKDAYS(B14,B7) |
11 | 11 | match |
| Inputs!B19 | =WORKDAY(EDATE(B7,1),0) |
46128 | 46128 | match |
| Inputs!B20 | =DATEDIF(B7,EDATE(B7,B5),"m")/12 |
4 | 4 | match |
| Inputs!B21 | =YEARFRAC(B7,EDATE(B7,B5),1) |
4.000547645 | 4.000547645 | match |
| Schedule!B3 | =EDATE(StartDate,A3) |
46128 | 46128 | match |
| Schedule!B4 | =EDATE(StartDate,A4) |
46158 | 46158 | match |
| Schedule!B5 | =EDATE(StartDate,A5) |
46189 | 46189 | match |
| Schedule!B6 | =EDATE(StartDate,A6) |
46219 | 46219 | match |
| Schedule!B7 | =EDATE(StartDate,A7) |
46250 | 46250 | match |
| Schedule!B8 | =EDATE(StartDate,A8) |
46281 | 46281 | match |
| Schedule!B9 | =EDATE(StartDate,A9) |
46311 | 46311 | match |
| Schedule!B10 | =EDATE(StartDate,A10) |
46342 | 46342 | match |
| Schedule!B11 | =EDATE(StartDate,A11) |
46372 | 46372 | match |
| Schedule!B12 | =EDATE(StartDate,A12) |
46403 | 46403 | match |
| Schedule!B13 | =EDATE(StartDate,A13) |
46434 | 46434 | match |
| Schedule!B14 | =EDATE(StartDate,A14) |
46462 | 46462 | match |
| Schedule!B15 | =EDATE(StartDate,A15) |
46493 | 46493 | match |
| Schedule!B16 | =EDATE(StartDate,A16) |
46523 | 46523 | match |
| Schedule!B17 | =EDATE(StartDate,A17) |
46554 | 46554 | match |
| Schedule!B18 | =EDATE(StartDate,A18) |
46584 | 46584 | match |
| Schedule!B19 | =EDATE(StartDate,A19) |
46615 | 46615 | match |
| Schedule!B20 | =EDATE(StartDate,A20) |
46646 | 46646 | match |
| Schedule!B21 | =EDATE(StartDate,A21) |
46676 | 46676 | match |
| Schedule!B22 | =EDATE(StartDate,A22) |
46707 | 46707 | match |
| Schedule!B23 | =EDATE(StartDate,A23) |
46737 | 46737 | match |
| Schedule!B24 | =EDATE(StartDate,A24) |
46768 | 46768 | match |
| Schedule!B25 | =EDATE(StartDate,A25) |
46799 | 46799 | match |
| Schedule!B26 | =EDATE(StartDate,A26) |
46828 | 46828 | match |
| Schedule!B27 | =EDATE(StartDate,A27) |
46859 | 46859 | match |
| Schedule!B28 | =EDATE(StartDate,A28) |
46889 | 46889 | match |
| Schedule!B29 | =EDATE(StartDate,A29) |
46920 | 46920 | match |
| Schedule!B30 | =EDATE(StartDate,A30) |
46950 | 46950 | match |
| Schedule!B31 | =EDATE(StartDate,A31) |
46981 | 46981 | match |
| Schedule!B32 | =EDATE(StartDate,A32) |
47012 | 47012 | match |
| Schedule!B33 | =EDATE(StartDate,A33) |
47042 | 47042 | match |
| Schedule!B34 | =EDATE(StartDate,A34) |
47073 | 47073 | match |
| Schedule!B35 | =EDATE(StartDate,A35) |
47103 | 47103 | match |
| Schedule!B36 | =EDATE(StartDate,A36) |
47134 | 47134 | match |
| Schedule!B37 | =EDATE(StartDate,A37) |
47165 | 47165 | match |
| Schedule!B38 | =EDATE(StartDate,A38) |
47193 | 47193 | match |
| Schedule!B39 | =EDATE(StartDate,A39) |
47224 | 47224 | match |
| Schedule!B40 | =EDATE(StartDate,A40) |
47254 | 47254 | match |
| Schedule!B41 | =EDATE(StartDate,A41) |
47285 | 47285 | match |
| Schedule!B42 | =EDATE(StartDate,A42) |
47315 | 47315 | match |
| Schedule!B43 | =EDATE(StartDate,A43) |
47346 | 47346 | match |
| Schedule!B44 | =EDATE(StartDate,A44) |
47377 | 47377 | match |
| Schedule!B45 | =EDATE(StartDate,A45) |
47407 | 47407 | match |
| Schedule!B46 | =EDATE(StartDate,A46) |
47438 | 47438 | match |
| Schedule!B47 | =EDATE(StartDate,A47) |
47468 | 47468 | match |
| Schedule!B48 | =EDATE(StartDate,A48) |
47499 | 47499 | match |
| Schedule!B49 | =EDATE(StartDate,A49) |
47530 | 47530 | match |
| Schedule!B50 | =EDATE(StartDate,A50) |
47558 | 47558 | match |
| Schedule!B51 | =EDATE(StartDate,A51) |
47589 | 47589 | match |
| Schedule!B52 | =EDATE(StartDate,A52) |
47619 | 47619 | match |
| Schedule!B53 | =EDATE(StartDate,A53) |
47650 | 47650 | match |
| Schedule!B54 | =EDATE(StartDate,A54) |
47680 | 47680 | match |
| Schedule!B55 | =EDATE(StartDate,A55) |
47711 | 47711 | match |
| Schedule!B56 | =EDATE(StartDate,A56) |
47742 | 47742 | match |
| Schedule!B57 | =EDATE(StartDate,A57) |
47772 | 47772 | match |
| Schedule!B58 | =EDATE(StartDate,A58) |
47803 | 47803 | match |
| Schedule!B59 | =EDATE(StartDate,A59) |
47833 | 47833 | match |
| Schedule!B60 | =EDATE(StartDate,A60) |
47864 | 47864 | match |
| Schedule!B61 | =EDATE(StartDate,A61) |
47895 | 47895 | match |
| Schedule!B62 | =EDATE(StartDate,A62) |
47923 | 47923 | match |
| Schedule!B63 | =EDATE(StartDate,A63) |
47954 | 47954 | match |
| Schedule!B64 | =EDATE(StartDate,A64) |
47984 | 47984 | match |
| Schedule!B65 | =EDATE(StartDate,A65) |
48015 | 48015 | match |
| Schedule!B66 | =EDATE(StartDate,A66) |
48045 | 48045 | match |
| Schedule!B67 | =EDATE(StartDate,A67) |
48076 | 48076 | match |
| Schedule!B68 | =EDATE(StartDate,A68) |
48107 | 48107 | match |
| Schedule!B69 | =EDATE(StartDate,A69) |
48137 | 48137 | match |
| Schedule!B70 | =EDATE(StartDate,A70) |
48168 | 48168 | match |
| Schedule!B71 | =EDATE(StartDate,A71) |
48198 | 48198 | match |
| Schedule!B72 | =EDATE(StartDate,A72) |
48229 | 48229 | match |
| Schedule!B73 | =EDATE(StartDate,A73) |
48260 | 48260 | match |
| Schedule!G74 | =IF(A74<=TermMonths,C74-F74,"") |
(blank) | "" | match |
| Schedule!H74 | =IF(A74<=TermMonths,H73+E74,"") |
(blank) | "" | match |
| Economics!B4 | =SUM(Schedule!E3:E74) |
10268.10862 | 10268.10862 | match |
| Economics!B5 | =SUMPRODUCT((Schedule!A3:A74<=12)*Schedule!E3:E74) |
#VALUE! | #VALUE! | match |
| Economics!B6 | =_xlfn.MAXIFS(Schedule!E3:E74,Schedule!A3:A74,"<="&TermMonths) |
323.01 | 323.01 | match |
| Economics!B7 | =Schedule!I2+NPV(Hurdle/12,Schedule!I3:I74) |
2888.781851 | 2888.781851 | match |
| Economics!B8 | =IRR(Schedule!I2:I74)*12 |
0.0927387946 | 0.0927387946 | match |
| Economics!B9 | =RATE(TermMonths,-B3,Financed-Inputs!B8,-Balloon)*12 |
0.0927387946 | 0.0927387946 | match |
| Economics!B10 | =PV(MonthlyRate,TermMonths,-B3,-Balloon) |
43650 | 43650 | match |
| Economics!B11 | =FV(Hurdle/12,TermMonths,0,-Inputs!B3*Inputs!B4) |
6285.699112 | 6285.699112 | match |
| Economics!B12 | =NPER(MonthlyRate,-B3,Financed/2) |
27.76645481 | 27.76645481 | match |
| Economics!B13 | =Financed*0.015 |
654.75 | 654.75 | match |
| Economics!B14 | =Financed*APR*TermMonths*30/360 |
15504.48 | 15504.48 | match |
| Economics!B15 | =Inputs!B8/Financed |
0.009049255441 | 0.009049255441 | match |
| Sensitivity!B10 | =MIN(B3:F8) |
717.0252152 | 717.0252152 | match |
| Sensitivity!B11 | =COUNTIF(B3:F8,"<1000") |
12 | 12 | match |
| Summary!B3 | =_xlfn.IFS(Inputs!B9="A","Prime",Inputs!B9="B","Near prime",Inputs!B9="C","St... |
"Standard" | "Standard" | match |
| Summary!B5 | =_xlfn.TEXTJOIN(" \| ",TRUE,B4,TEXT(Economics!B3,"#,##0.00")&" per month",Term... |
"Hire purchase | 872.43 per month | 48..." | "Hire purchase | 872.43 per month | 48..." | match |
| Summary!B6 | =COUNTIF(Schedule!D3:D74,">900") |
0 | 0 | match |
| Summary!B8 | =IF(B7,"Auto-approve",IF(Inputs!B9="E","Decline","Refer")) |
"Auto-approve" | "Auto-approve" | match |
| Summary!B9 | =Schedule!B74-Schedule!B2 |
2192 | 2192 | match |
| Summary!B10 | =AVERAGEIF(Schedule!A3:A74,"<="&TermMonths,Schedule!C3:C74) |
29143.25139 | 29143.25139 | match |