3.1k Aufrufe
Gefragt in Tabellenkalkulation von tomschi Mitglied (879 Punkte)
Allseits einen schönen Guten Morgen!

Mein Projekt „Deutsch > Tschechisch“-Vokabeltrainer neigt sich schön
langsam dem Ende.
Leider benötige ich jedoch nochmals die Hilfe der VBA-Experten.

Der eine oder andere wird in der Musterdatei (www.file-upload.net/download-1807776/Vokabeltrainer_Muster01.xls.html) seine bisherige Unterstützung
wieder finden. Dafür möchte ich mich hier mich hiermit nochmals herzlich
bei allen bedanken!

Nun zu meinem heutigen Anliegen:
Ich möchte per „Zufallsgenerator“ gleichzeitig auf D > CZ UND CZ > D auf prüfen. Der "Zufallsgenerator" soll dies auswählen.
Im Moment kann ich jeweils statisch nur D > CZ bzw. nur CZ > D aufrufen.
Vielleicht hat jemand einen Lösungsvorschlag für mich.

Ein paar weitere Fragen habe ich in der Datei selbst notiert.

Ciao

Tom

12 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hlalo Tom,

ermittle einfach eine Zufallszhal und runde die aus 0 Kommastellen
1=D
0=CZ

Gruß Hajo
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Hallo Hajo!

Vielen Dank für die rasche Rückmeldung.

ermittle einfach eine Zufallszhal und runde die aus 0 Kommastellen
1=D
0=CZ


Leichter geschrieben als getan.
a) Weiß ich nicht wie ich das anstellen soll.
b) Wie und wo muss ich dann die ermittelte Zufallszahl in den (bestehenden) Code einbauen.

Wie schon kurz in der Musterdatei erwähnt, habe ich den bestehenden "Zufalls-Code" aus einem Buch abgeschrieben.
Das mit dem "Zufallsgenerator" ist für mich absolutes Neuland.

Ciao

Tom
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Tom,

warum soll ich eine Datei runter laden. Ich bin davon ausgegangen Zufallszahl ist klar und Runden ist Round.

Gruß Hajo
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Hallo Hajo!

Sorry, aber ich bin leider immer noch ein Neuling in Sachen VBA.

Daher habe ich keinen blassen Schimmer wie ich wo und wann eine Zufallszahl generiere und diese dann weiterverwende.

Ciao

Tom
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Tom,

schaue in die VBA Hilfe unter randomize da ist es gut beschrieben.

Gruß Hajo
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi all ^^

hier erstmal eine einfache variante :-))

gruss nighty

Option Explicit
Sub Zufall01()
Randomize Timer
If Int(Rnd * 1) = 1 Then
'bei 1
Else
'bei 0
End If
End Sub
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Mahlzeit!

Danke für die Rückmeldungen.
Langsam wird es etwas klarer.

Ich werde dann zu Hause in Ruhe wieder mit dem "Codebasteln" beginnen. ;-)

Ciao

Tom
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Hallo nighty!

Ich habe Deinen von Dir dankenderweise geposteten Code kopiert und dabei festgestellt, dass das "Ergebnis" bei meinen zahlreichen Tests (ca. 50 x) immer null ist.

Hast Du zufällig eine Ahnung woran dies liegen könnte?

Ciao

Tom
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Tom,

ersetze den Faktor 1 im Code durch eine 2

If Int(Rnd * 2) = 1 Then

Gruß
Rainer
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Hi Rainer!

Herzlichen Dank für Deinen Input!
Jetzt variiert das "Ergebnis". :-)

Frage zum Verständnis:
Was genau bewirkt "* 2"?
Warum funktioniert es nun und vorher nicht?

Ciao

Tom
...