Avatar billede hjaelp Nybegynder
28. august 2001 - 21:27 Der er 9 kommentarer og
1 løsning

Regneark

Hjælp!!!
Jeg skal bruge et \"regneark\" der indeholder 20 felter.
De fem af felterne er til plusser, og de 15 er til minusser.

Der skal også være en \"sammenregn\" funktion der lægger de 15 minusser
sammen og trækker dem fra summen af de fem plusser.

Er der nogle der kan hjælpe mig med dette projekt?
Avatar billede vester Novice
28. august 2001 - 21:29 #1
Lytter med
Avatar billede jakoba Nybegynder
28. august 2001 - 21:50 #2
felter der ikke er udfyldt vil blive talt som 0:

oppe i head en <script section:
<script language=\'javascript\'> <!--
function docalc( ) {
    frm = document.forms[\'dinform\'].elements;
    var plus = 0;
    for (i=0; 5>=i; i++) plus += parseInt( \"0\"+frm[\"plus\"+i].value );
    var minus = 0;
    for (i=0; 15>=i; i++) minus += parseInt( \"0\"+frm[\"minus\"+i].value );
    frm[\'resultat\'],value = plus-minus;
}; //end docalc()
// --> </script>

og nede i body din formular:
<form name=\"dinform\" ... >

<input type=\'text\' name=\'plus1\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'plus2\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'plus3\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'plus4\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'plus5\' value=\"\" onblur=\"docalc()\">

<input type=\'text\' name=\'minus1\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus2\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus3\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus4\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus5\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus6\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus7\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus8\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus9\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus10\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus11\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus12\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus13\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus14\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus15\' value=\"\" onblur=\"docalc()\">

<input type=\'text\' name=\'resultat\' value=\"\" onfocus=\"this,blur()\">

<form>

mvh JakobA
Avatar billede jakoba Nybegynder
28. august 2001 - 21:52 #3
Ups. og naturligvis en fejl. de to for løkker skal starte med 1
...
    for (i=1; 5>=i; i++) plus += parseInt( \"0\"+frm[\"plus\"+i].value );
    var minus = 0;
    for (i=1; 15>=i; i++) minus += parseInt( \"0\"+frm[\"minus\"+i].value );
...
Avatar billede hjaelp Nybegynder
28. august 2001 - 22:06 #4
Jeg kan ikke få det til at virke.
Den viser ikke resultatet.
Avatar billede jakoba Nybegynder
28. august 2001 - 22:15 #5
Min fejl. jeg havde skrevet , istedet for punktum i linien
    frm[\'resultat\'].value = plus-minus;
Avatar billede jakoba Nybegynder
28. august 2001 - 22:19 #6
Og fandt lige endnu een. gentager lige det hele emd alle rettelser:

oppe i head en <script section:
<script language=\'javascript\'> <!--
function docalc( ) {
    frm = document.forms[\'dinform\'].elements;
    var plus = 0;
    for (i=1; 5>=i; i++) plus += parseInt( \"0\"+frm[\"plus\"+i].value );
    var minus = 0;
    for (i=1; 15>=i; i++) minus += parseInt( \"0\"+frm[\"minus\"+i].value );
    frm[\'resultat\'].value = plus-minus;
}; //end docalc()
// --> </script>

og nede i body din formular:
<form name=\"dinform\" ... >

<input type=\'text\' name=\'plus1\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'plus2\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'plus3\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'plus4\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'plus5\' value=\"\" onblur=\"docalc()\">

<input type=\'text\' name=\'minus1\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus2\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus3\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus4\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus5\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus6\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus7\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus8\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus9\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus10\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus11\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus12\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus13\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus14\' value=\"\" onblur=\"docalc()\">
<input type=\'text\' name=\'minus15\' value=\"\" onblur=\"docalc()\">

<input type=\'text\' name=\'resultat\' value=\"\" onfocus=\"this.blur()\">

<form>
Avatar billede hjaelp Nybegynder
28. august 2001 - 22:24 #7
Det hjalp, men der er en fejl.
Hvis jeg skriver 10 i de fem plus felter, trækker den kun værdien 8 ud af felterne. DVS 5x10=40?
Avatar billede hjaelp Nybegynder
28. august 2001 - 22:27 #8
Den har et stort problem med nuller (som i 1000 eller 5000 o.s.v.)
Avatar billede jakoba Nybegynder
28. august 2001 - 22:33 #9
een gang til :(  parseInt skulle have specificeret rasix 10

    for (i=1; 5>=i; i++) plus += parseInt( \"0\"+frm[\"plus\"+i].value, 10 );
    var minus = 0;
    for (i=1; 15>=i; i++) minus += parseInt( \"0\"+frm[\"minus\"+i].value, 10 );
Avatar billede hjaelp Nybegynder
28. august 2001 - 22:39 #10
Det virker for fedt.

TAK
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester