Mám vzorec, ktorý nie je úplne správny, chcel by som, aby sa vzorec pozrel na prvých 1 alebo 2 znaky inej bunky a na základe jeho obsahu sa množil o stanovenú sumu.
Funguje čiastočne, ale vyžaduje buď úplné prepracovanie alebo mierne vylepšenie:
=IFERROR(IF(LEFT(A213,1)="Z",(D213*0.85),($D213*(1-K$7))),IF(LEFT(A213,2)="FF",(D213*0.8),""))
V súčasnosti, ak FF
sa zistí, že sa vráti k inému prvému vyhláseniu: *(1-K$7)
- Vyskúšal som, že toto vyhlásenie je na konci, takže je to posledná možnosť, ale nemohol som vypracovať syntax.
Myslím si, že ďalšia možnosť by bola tabuľka na nasledujúcom hárku s:
Z .85
FF .8
atď.
Potom odkaz na toto vo vzorci.
Vyššie uvedené riešenie by bolo škálovateľné, aj keď si nie som úplne istý, ako by som to urobil.
Nejaké nápady?
Príklad:
Bunka K $ 7 = 30%
A D E
FF12345 £100 £80 <-- column E = column D * 0.8
Z345674 £200 £170 <-- column E = column D * 0.85
V345565 £300 £210 <-- column E = column D * (1-30%)
odpovede:
0 pre odpoveď č. 1Za predpokladu, že "Z" má prednosť, malo by to urobiť trik:
=IFERROR(IF(LEFT(A213,1)="Z",D213*0.85,IF(LEFT(A213,2)="FF",D213*0.8,$D213*(1-K$7))),"")
Hľadá "Z", potom "FF", potom ide $D213*(1-K$7)
.
Nižšie obsahuje vaše navrhnuté VLookup
:
=IFERROR(IF(LEFT(A213,1)="Z",D213*VLOOKUP("Z",Sheet2!$A:$B,2,0),IF(LEFT(A213,2)="FF",D213*VLOOKUP("FF",Sheet2!$A:$B,2,0),$D213*(1-K$7))),"")