It doesn't work because you are guessing and not trying to think what you want to achieve.
Let's start with pennies. Let's deal with the first row (cell J18). To get the number of pennies, you have to multiply the quantity by the unit price. Even better, you can just multiply the quantity by the penny unit, or the zloty will not change the result. And that could be enough, but sometimes more than 100 groszy will come out, which is unacceptable. as you know, multiples of 100 groszy will add up, but as zlotys, so you can, apart from the two numbers on the right, cut everything off before them. So I propose a function similar to (insert cells as they should be):
= [quantity] * [unit_pence]
To round this to two places (that is, truncate the full hundreds):
= RIGHT ([quantity] * [unit_pence]; 2)
The right function gives a text value, so that there is a number in the cell suitable for further calculations, it must all be closed in the VALUE function:
= VALUE (RIGHT ([quantity] * [unit_pence], 2))
instead of [quantity] and [unit_pence] insert the address of the appropriate cell, that is for the first line F18 and H18 for example.