VBA Excel Lotto

Moniso
2016-03-29 18:52
Moniso
0

Potrzebuję pomocy, mianowicie mam za zadanie do zrobienia w excelu symulator lotto. Niestety, nie miałam dotychczas styczności z VBA i nic mi z tego nie wychodzi. Powinnam zrobić arkusz w którym : Będzie losowane 6 liczb(tych typowanych) z zakresu <1;49>. Następnie chcemy przeprowadzić symulację losowań lotto w liczbie takiej jaką wprowadzimy, tak żeby liczby były posortowane i w kazdym losowaniu bez powtórzeń. Następnie chcemy aby odbyło się sprawdzanie ile w każdym z losowań jest trafień, ile było jakich trafień i jaka by była z tego wygrana. Bardzo proszę o pomoc, bez znajomości VBA zatrzymałam się na losowaniu 6 liczb i nic więcej.

Pozostało 580 znaków

2016-03-29 18:57

Rejestracja: 14 lat temu

Ostatnio: 2 dni temu

0

Jedno z:

  1. Czytasz byle kurs po kilku godzinach bez problemów rozwiązujesz zadanie
  2. Zgłaszasz zlecenie w dziale ogłoszenia drobne
  3. Zmieniasz kierunek studiów

Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.
edytowany 1x, ostatnio: _13th_Dragon, 2016-03-29 18:57

Pozostało 580 znaków

2016-03-29 19:01
Moderator

Rejestracja: 9 lat temu

Ostatnio: 8 godzin temu

0

Pokaż co napisałaś i wyjaśnij, z czym masz problem.

Pozostało 580 znaków

Moniso
2016-03-31 17:10
Moniso
0
aurel napisał(a):

Pokaż co napisałaś i wyjaśnij, z czym masz problem.

Zasadniczo mam problem z całym zadaniem, gdyż nie znając języka nie jestem w stanie zrobić projektu nawet w 2 tygodnie. A największy problem mam z wykonaniem fragmentu, który losowałby 6 liczb z zakresu <1;49> tyle razy ile wpisze użytkownik

Sub totolotek()
    Dim i As Integer
    Dim x As Integer

    For i=1 To 6
        Randomize
        x = Int(Rnd*(49)+1)
        Range("A" & i)=x
    Next i 
End Sub

Tyle napisałam sama, niestety nie jestem w stanie napisać więcej wiedząc jedynie jak działają określone pętle, a niestety przebrnięcie przez kursy VBA niewiele mi pomogło.

edytowany 1x, ostatnio: aurel, 2016-12-13 18:26

Pozostało 580 znaków

2016-03-31 17:45

Rejestracja: 16 lat temu

Ostatnio: 3 godziny temu

0

Zacznijmy od tego, że Randomize przed pętlę.

Pozostało 580 znaków

2016-03-31 19:04
Moderator

Rejestracja: 9 lat temu

Ostatnio: 8 godzin temu

0

W twoim kodzie losuje się 6 razy. Zacznijmy więc od tego, by 6 zamienić na jakąś zmienną:

Sub totolotek()
    Dim i As Integer
    Dim x As Integer
    Dim ileLosowan As Integer

    ileLosowan = 666

    Randomize
    For i=1 To ileLosowan
        x = Int(Rnd*(49)+1)
        Range("A" & i)=x
    Next i 
End Sub

(przy okazji poprawka od @Azarien)
I teraz nam się będzie losowało 666 razy.
Teraz wystarczy jeszcze tylko wczytać dane podane przez użytkownika. Prawdopodobnie chcesz je pobrać z jakiejś komórki arkusza?

ileLosowan = Cells(1, 2).Value
edytowany 1x, ostatnio: aurel, 2016-03-31 19:04
I teraz nam się będzie losowało 666 razy. - w zadaniu chodzi chyba o losowanie 6*N liczb, gdzie N ma być podane przez użytkownika. - Azarien 2016-03-31 19:59

Pozostało 580 znaków

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0