WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Excel: Plätze mittels Zufallszahlen zuweisen (http://www.wcm.at/forum/showthread.php?t=11069)

MUCH 03.02.2001 01:24

ich habe folgendes Problem:

Eine Tabelle mit 6 Geräten - diese Geräte haben in den Zellen D2-D7 Ihre Nummerierung...
Ich möchte mittels Zufallszahlen diese Nummern "verteilen"(natürlich darf keine Zahl öfter als 1x vorkommen)

wer weiss wie das funktioniert?


danke
Michi

little21 03.02.2001 12:16

hy!
wann sollen die zufallszahlen vergeben werden bzw. wie sollten die zahlen formatiert sein?
z.b. beim öffnen der datei?
denn dann kannst du es mit einem makro programmieren!

mfg
little

MUCH 03.02.2001 12:20

nur einmal vergeben.
Es sollte eine "Startliste" werden, wobei eben den Startern Geräte zufällig zugeteilt werden. Der Zeitpunkt wäre mir eher egal, da ich in die Liste ohnedies zuerst die Namen reinschreibe und erst wenn das Feld mit allen 6 Startern "gefüllt" ist, werden die Geräte zugewiesen...

danke
Michi

little21 03.02.2001 13:18

hy!

ich hoffe der code ist für dich das richtige bzw. wie du es wolltest! er wird ausgeführt, wenn du den ordner aktivierst, in dem du den code eingefügt hast!
ev. mußt du den ordnernamen ändern!

Private Sub Worksheet_Activate()

' Definieren der Variablen
Dim a(0 To 5) As Double
i = 0


Do While i < 6
'int für eine Ganzzahl
'int((obergrenze - untergrenze +1) * rnd + untergrenze)
a(i) = Int((100 - 1 + 1) * Rnd + 1)
x = 0

'überprüfen ob die zahl schon vorkommt
Do While x < i
If a(i) = a(x) Then i = i - 1
x = x + 1
Loop

i = i + 1
Loop

i = 0
'werte in die zellen schreiben
Do While i < 6
Worksheets("Tabelle1").Cells(i + 2, 4).Value = a(i)
i = i + 1
Loop

End Sub


gutes gelingen :D

mfg
little

MUCH 03.02.2001 14:09

danke, du ganz grosser "little21"! :)

Ich habe nur noch das Problem mit dem Aktivieren des codes...
Wenn ich im VBA drinnen bin kann ich es mit "F5" korrekt ausführen - nur:
Wie führt sich der code ohne mein Zutun aus???

Michi

little21 03.02.2001 18:27

hy!

wenn du in visual-basic bist gibt es links ein fenster mit dem namen VBAPROJEKT. dort siehst du deine datei mit den verschiedenen ordnern! wenn du dort deinen ordner aktivierst und dann dort rechte maustaste drückst kommt ein pull-down-menü indem du CODE auswählen mußt! dann wird der Code für den ordner angezeigt! wenn du dann den geposteten code einfügst müßte die prozedure jedesmal ausgeführt werden, wenn der ordner aktiviert wird!

2 Möglichkeit:
du zeichnest ein makro auf (ist egal was!) und bearbeitest dann den code! --> makro code löschen bis auf erste und letzte zeile und meinen code einfügen! (bis auf die erste und letzte zeile meines codes!) dann wird die funktion ausgeführt, wenn du das makro startest!

du kannst ja einen button das makro zuweisen!

hoffe du hast trotz der langen ausführung etwas verstanden! :D

mfg
little

MUCH 03.02.2001 18:30

...jetzt bin ich "auf Sendung" - Herzlichen Dank nochmals für Deine Mühen!


Michi


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:20 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag