Bardzo dziękuję za odpowiedź. W między czasie zrobiłem coś takiego. Dodatkowo dołączyłem system poprawy przecinka "," na kropkę "." aby poprawnie wypełniać pola.
Z podpowiedzi zaraz skorzystam

. Tymczasem mój kod:
function licz(dochod)
{
var x=document.getElementById('cena');
var y=document.getElementById('sprzedaz');
l=x.value;
l=l.replace(',','.');
l=parseFloat(l);
r=y.value;
r=r.replace(',','.');
r=parseFloat(r);
var k=document.getElementsByName('box');
var licz=0;
for(i=0;i<k.length;i++){
z=k[i].value;
z=z.replace(',','.');
z=parseFloat(z);
licz+=z;
}
var suma = 0;
suma = r - l - licz;
//alert(suma);
dochod.value = suma;
}
<div onclick="licz(document.f1.dochod)">Licz
</div> <input type="text" name="dochod"><br>
<input type="text" name="sprzedaz" id="sprzedaz">Sprzedaz
<br> <input type="text" name="cena" id="cena" >Zakup
<br>
<input type="text" name="box" > <input type="text" name="box" >
<input type="text" name="box" onkeyup="licz(document.f1.dochod)"><!--Ostatni wiersz powinien zawierać zdarzenie onkeyup-->
A to ten sam skrypt z wykorzystaniem podpowiedzi. Serdeczne dzięki

function licz(dochod)
{
var x=document.getElementById('cena');
var y=document.getElementById('sprzedaz');
var dochod=document.getElementById('dochod');
l=x.value;
l=l.replace(',','.');
l=parseFloat(l);
r=y.value;
r=r.replace(',','.');
r=parseFloat(r);
var k=document.getElementsByName('box');
var licz=0;
for(i=0;i<k.length;i++){
z=k[i].value;
z=z.replace(',','.');
z=parseFloat(z);
licz+=z;
}
var suma = 0;
suma = r - l - licz;
//alert(suma);
dochod.value = suma;
}
<div onclick="licz()">Licz
</div> <input type="text" name="dochod" id="dochod"><br>
<input type="text" name="sprzedaz" id="sprzedaz">Sprzedaz
<br> <input type="text" name="cena" id="cena" >Zakup
<br>
<input type="text" name="box" > <input type="text" name="box" >
<input type="text" name="box" onkeyup="licz()"><!--Ostatni wiersz powinien zawierać zdarzenie onkeyup-->