Random-loop exceliin.

Anonyymi

Pystyykö excelin random arvoille tekemään loopin? Esim. Soluun A1 randomluku ja soluun b1 laskuri joka summaisi yhteen a1 satunnaisluvut. Tämän lisäksi c1 oleva luku määrittäisi monesti randomluku ajettaisi.

Esim. jos c1=100;

a1 randomluku vaihtuisi 100kertaa

Ja b1 laskisi nämä kaikki 100 randomlukua yhteen.

8

256

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Rakenna itsellesi yksinkertainen esimerkki logiikan ymmärtämiseksi:

      Avaa Exceliin uusi työkirja ja Tallenna nimellä:
      Tiedoston nimi: summaaluuppi
      Muoto: Excel-työkirja (makrot käytössä)

      --------------------------

      Oletetaan esimerkissä että halutaan ajaa luuppi 10 kertaa:

      Kirjoita soluun A3:
      10

      --------------------------

      Oletetaan esimerkissä että satunnaisluku on aina välillä 1 - 10.

      --------------------------

      Avaa VBA-moduuli näppäinyhdistelmällä Alt F11.

      Tuplaklikkaa vasemmassa ikkunassa: TämäTyökirja

      --------------------------

      Kopioi alla oleva koodi oikealle avautuneeseen ikkunaan:

      Sub SummaaLuuppi()
      Dim i As Integer
      Dim kertaa As Integer
      Range("A2").Select
      Selection.ClearContents
      Range("A3").Select
      kertaa = ActiveCell.Value
      Range("A1").Select
      ActiveCell.FormulaR1C1 = "=RANDBETWEEN(1,10)"
      For i = 1 To kertaa
      Range("A1").Select
      Selection.Copy
      Range("A2").Select
      Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, SkipBlanks _
      :=False, Transpose:=False
      Next i
      Range("A1").Select
      Selection.ClearContents
      Range("A2").Select
      End Sub

      --------------------------

      Sulje VBA-moduuli valitsemalla File / Close and Return to Microsoft Excel.

      --------------------------

      Tallenna luomaasi tiedostoon (summaaluuppi.xlsm) tekemäsi muutokset.

      --------------------------

      Aja summaaluuppi-makro valitsemalla Kehitystyokalut / Makrot / TämäTyökirja.SummaaLuuppi / Suorita

      --------------------------

      Sarakkeessa A2 on makron suorittamisen jälkeen summa kymmenestä satunnaisluvusta väliltä 1-10.

    • Anonyymi

      Tai siten vaan vaikka sarakkeesen A iso läjä funktiota =RAND() allekain (kopioimalla) ja sitten B1 celliin funktio =SUM(OFFSET(A1,0,0,C1,1)) ja C1:ssä on siis haluttu arvo. A sarakkeessa on tietenkin oltava niin monta =RAND() riviä kuin mikä voi enintään olla C1:ssä olevan luvun maksimiarvo,

      • Anonyymi

        Ai niin, F9 päivittää sheetin.


    • Anonyymi

      Yksi tapa on tehdä oma funktio, vaikka joku tälläinen

      Function satunnaissumma(lukumäärä)
      Dim summa As Variant
      summa = 0
      If lukumäärä >= 1 Then
      For kerta = 1 To lukumäärä
      summa = summa Rnd
      Next
      End If
      satunnaissumma = summa
      End Function

      Tuota voi käyttää laittamalla soluun

      =satunnaissumma(100).

      Pienellä säädöllä voi lisätä satunnaisluvuille ala- ja ylärajatkin. Vinkkiä rajojen asetukseen https://www.techonthenet.com/excel/formulas/rnd.php

      • Anonyymi

        Suuret kiitokset avusta, funktio toimi mainiosti. Minulle tuli vielä mieleen, onnistuuko funktiolla laskemaan kuinka monta kertaa satunnaisluku on yli halutun arvon. Siis jos A1=satunnaisluku B1= 0 jos A1<0,3 ja muuten 1. Lisäksi solu C1 kertoisi kuinka monta kertaa kuinka monta kertaa A1 on ollut yli 0,3 esimerkiksi kymmenestä ajosta.


      • Anonyymi
        Anonyymi kirjoitti:

        Suuret kiitokset avusta, funktio toimi mainiosti. Minulle tuli vielä mieleen, onnistuuko funktiolla laskemaan kuinka monta kertaa satunnaisluku on yli halutun arvon. Siis jos A1=satunnaisluku B1= 0 jos A1<0,3 ja muuten 1. Lisäksi solu C1 kertoisi kuinka monta kertaa kuinka monta kertaa A1 on ollut yli 0,3 esimerkiksi kymmenestä ajosta.

        Funktio palauttaa vain yhden arvon. Voit määritellä moduliin public-muuttujan, johon satunnaissumma-funktio laskee tuon tiedon. Voit tehdä toisen funktion, joka palauttaa em. muuttujan arvon.


      • Anonyymi
        Anonyymi kirjoitti:

        Funktio palauttaa vain yhden arvon. Voit määritellä moduliin public-muuttujan, johon satunnaissumma-funktio laskee tuon tiedon. Voit tehdä toisen funktion, joka palauttaa em. muuttujan arvon.

        Käytttäjän laatima 'Array Formula' palauttaa haluttaessa kaksi tai hyvinkin monta arvoa (en tiedä mikä on yläraja). Hyvä ohje: http://www.cpearson.com/Excel/ArrayFormulas.aspx


      • Anonyymi
        Anonyymi kirjoitti:

        Suuret kiitokset avusta, funktio toimi mainiosti. Minulle tuli vielä mieleen, onnistuuko funktiolla laskemaan kuinka monta kertaa satunnaisluku on yli halutun arvon. Siis jos A1=satunnaisluku B1= 0 jos A1<0,3 ja muuten 1. Lisäksi solu C1 kertoisi kuinka monta kertaa kuinka monta kertaa A1 on ollut yli 0,3 esimerkiksi kymmenestä ajosta.

        Kun on pienistä määristä kyse niin tuollaiset on nopeinta tehdä sheetillä, esimerkiksi:

        =COUNTIF(A1:A100,"<0.3")

        laskee alueen A1:A100 sisältämien niiden cellien määrän, joissa kaikissa on funktio

        =RAND()

        joiden arvo on alle 0,3.

        Bonuksena voi helposti luoda erilaisia graafeja ja voi helposti käyttää Excelin tilastomatemaattisia funktiota analyysejä varten.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Kuinkahan paljon taas itken tulevina öinä

      meitä ja sitä, miten kaikki meni. Miten rikki se repi sydäntä ja jäljelle jäi pysyvä suru. En vain pääse siitä, ei hetke
      Ikävä
      75
      9649
    2. Kitaristi Esa Pulliainen laihtunut

      Tietääkö kukaan minkä takia Esa Pulliainen on laihtunut lyhyessä ajassa ainakin 60 kiloa. Esa Pulliainen laihtunut 😳
      Laihdutus
      138
      5112
    3. Pienimäki ei anna haastatteluja

      medialle Ähtärin kunnan velka sotkuista, kertovat luotettavat lähteet.
      Ähtäri
      17
      3928
    4. Sinuun ei tehoa mikään

      Annan periksi. En vain jaksa tuulimyllyä vastaan taistella. Miehelle
      Ikävä
      37
      3731
    5. Onko Kuhmolaiset tyytyväisiä?

      Kun pääsivät eroon huijari Polvisesta?
      Kuhmo
      22
      3130
    6. Huomenta ja hyvää tiistaita

      Huomenta ja hyvää tiistaita. ❄️🐺☕❄️
      Ikävä
      88
      1951
    7. En tiedä mitä ajatella

      Petaatko perjantaille jotain. Ei meidän kannata minun sydän on viety. Se joka sen vei ei ole mieheni, etkä se ole sinä.
      Tunteet
      36
      1772
    8. Hyviä vinkkejä täällä

      Eli kaivattua vain kädestä kiinni ja jos vastustelee niin sanoo, että hei beibi beibi nyt mennään vaan. Näin he elivät e
      Ikävä
      17
      1637
    9. voitaisiinko unohtaa se sotku?

      Olisiko mahdollista aloittaa puhtaalta pöydältä vielä? Ikävä sua ****
      Ikävä
      16
      1609
    10. Naisten ulkonäkö, jos miehiä ei olisi?

      Mä meinasin ensiksi, että en aloittaisi tätä keskustelua, ainan nyt, mutta huomasin tossa toisessa ketjussa, että tämä s
      Sinkut
      245
      1599
    Aihe