Perrern Skrevet 15. januar 2014 Del Skrevet 15. januar 2014 (endret) Hei Jeg driver for øyeblikket å lager et regneark som skal brukes som ekstra oppgaver i et kurs som handler om excel. For morroskyld. Dette regnearket skal få folk til å få litt mer innsikt i bruk av hvis funksjonen. For å få dette til å funke slik som jeg hadde tenkt så har jeg måtte titte litt rundt etter hvordan man lager macroer og slikt, og jeg har klart å lage et "script" som utfører det jeg ønsker. Private Sub Test_Click() Range("C9").Value = "=RandBetween(1, 10)" Range("E7").Value = "=RandBetween(1, 10)" Do Until Range("C9").Value = 0 Or Range("E7").Value = 0 Do While Range("C7").Value = "Grønn" Range("C9").Value = Range("C9").Value - 1 Application.Wait (Now + TimeValue("0:00:01")) Loop Do While Range("F7").Value = "Grønn" Range("E7").Value = Range("E7").Value - 1 Application.Wait (Now + TimeValue("0:00:01")) Loop Loop End Sub Problemet mitt er at når jeg klikker på musetasten, eller generelt gjør noe mens dette kjører (hvilket jeg tar i forutsetning at noen av studentene kommer til å gjøre) så setter excel seg fast i en evig loop, hvor tallene starter å telle ned under 0. Er det noen som har noe forslag til hvordan man enkelt kan fikse dette? Evt vet hvordan man kan gjøre slik at makroen kan bli pauset eller stoppet under utførelse, feks ved et vilkårlig tastetrykk eller museklikk? Som sagt er ikke dette helt mitt område, prøvde først dette i dag Endret 15. januar 2014 av Perrern Lenke til kommentar
Harald Staff Skrevet 16. januar 2014 Del Skrevet 16. januar 2014 Koden kommer til denne loopen, looper og kommer ikke lenger: Do While Range("C7").Value = "Grønn" Range("C9").Value = Range("C9").Value - 1 Application.Wait (Now + TimeValue("0:00:01")) LoopJeg forstår dessverre ikke hva dette er ment å utrette, så jeg har ingen forsslag til løsning. Beste hislen Harald Lenke til kommentar
Perrern Skrevet 16. januar 2014 Forfatter Del Skrevet 16. januar 2014 Koden kommer til denne loopen, looper og kommer ikke lenger: Do While Range("C7").Value = "Grønn" Range("C9").Value = Range("C9").Value - 1 Application.Wait (Now + TimeValue("0:00:01")) Loop Jeg forstår dessverre ikke hva dette er ment å utrette, så jeg har ingen forsslag til løsning. Beste hislen Harald Fått svar fra en annen fyr, Virker ikke som om det jeg hadde i tankene egentlig ikke var så veldig lurt, ble veldig fort kluss og kræsjing av programmet, så har gitt det opp. Men takk for hjelpen uansett Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå