Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1040to1044
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zufallsprüfungen - VBA?

Zufallsprüfungen - VBA?
16.01.2009 18:33:08
Tatjana
Hallo zusammen,
das ist mein erster Beitrag, daher bítte ich Euch um Nachsicht, wenn ich das vielleicht nicht ganz richtig mache. Ich beschreibe mein Problem einfach mal.
In Spalte A befinden sich Vorgangsbegriffe (ab Zeile 2, da Zeile 1 die Überschrift trägt). In den Spalten B und folgende dann die Mitarbeiternamen (jeweils Zeile 1, da ja Überschrift)
Jetzt soll per Zufallsgenerator pro Mitarbeiter ein Begriff ausgewählt werden. In dieser Zeile soll ein "x" stehen.
Die Vorgänge in Spalte A und auch die Mitarbeiteranzahl sind variabel.
Könnt Ihr da helfen?
VG
Tatjana

22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zufallsprüfungen - VBA?
16.01.2009 18:39:00
Oberschlumpf
Hi Tatjana
Könntest du uns eine ausgefüllte Bsp-Datei zur Verfügung stellen?
Wenn du nicht weißt, wie das geht, dann klick mal auf den nächsten Text:
Hier geht es zum File-Upload
Schön wäre es, wenn in der Datei noch mal genau beschrieben ist, was wann wie wo warum geschehen soll.
Ciao
Thorsten
AW: Zufallsprüfungen - VBA?
16.01.2009 20:28:28
Tatjana
Hallo Robert,
genau so hatte ich es mir gewünscht. :-)
Vielen lieben Dank für Deine Hilfe!
VG
Tatjana
Nein da ist noch der Wurm drin !
16.01.2009 20:35:45
Matthias
Hallo Tatjana
Lies Dir meinen Beitrag an Robert durch.
Mach mal Folgendes
Datei öffnen
Zufallszahl generieren
Notiere Dir die Verteilung
Datei schliessen
wenn Du nun ein 2. mal die Datei öffnest und wieder Zufallszahlen generieren willst
kommen immer die gleichen Zahlen
Da muss Randomize mit eingebaut werden.
siehe mein Posting an Robert
Gruß Matthias
AW: Zufallsprüfungen - VBA?
16.01.2009 20:30:00
Matthias
Hallo Robert
ohne Randomize
erhälst Du aber immer die gleichen Zahlen.
Ist Dir das schon aufgefallen ?


und es kann vorkommen, das alle Mitarbeiter die gleiche Vorgangsart zugewiesen bekommen.
Userbild
In E1 habe ich mal nur eine Kontrolle eingebaut für Zeile 2
hier mal zum testen:
https://www.herber.de/bbs/user/58496.xls


Gruß Matthias
Anzeige
AW: Zufallsprüfungen - VBA?
16.01.2009 20:34:00
robert
hallo matthias,
das kann nicht sein, soeben getestet
die X sind immer woanders.
zur zweiten kritik gebe ich dir recht, aber ohne zu wissen wozu das gut ist
habe ich nicht weiter getestet.
gruß
robert
das war keine Kritik !
16.01.2009 20:38:00
Matthias
Hallo robert
... sondern ein Hinweis.
Gruß Matthias
AW: das war keine Kritik !
16.01.2009 20:39:00
robert
hi,
alles ok :-)
aber gibst du mir mit den X recht?
gruß
robert
Nein, Robert
16.01.2009 20:44:00
Matthias
Hallo
Öffne die Datei
starte einmal das Makro
notiere oder merke dir die Positionen vom "X"
Nun schliesse die Datei wieder ohne zu speichern.


nun das gleiche nochmal:
Öffne die Datei
starte einmal das Makro
und es sind die gleichn Positionen!
Glaubst Du es mir nun?
Gruß Matthias
Anzeige
AW: Nein, Robert
16.01.2009 20:50:00
robert
hi,
also ich versteh nicht, was du meinst.
bei jedem klick auf den button ändern sich die X
tut mir leid
gruß
robert
?
16.01.2009 20:42:00
Tatjana
Hallo Ihr beiden,
habe das jetzt mal probiert und es kommen wohl wirklich die gleichen Zahlen raus. Aber Deine Tabellle, Robert, verstehe ich Dich. Bei Deinem Text kommt IMMERdas gleiche raus. Oder mache ich was falsch?
Was könnte man denn man anders machen? Das rando irgendwas ?
Nochmals danke!
VG
Tatjana
Fehler ....
16.01.2009 20:42:49
Tatjana
Falsch, meinte Deine Tabelle Matthias
Randomize muss hier rein ...
16.01.2009 20:48:00
Matthias
Hallo

Sub Makro3()
Dim lz, lsp, i, x, y, z
lz = Cells(Rows.Count, 1).End(xlUp).Row
lsp = ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column
Range(Cells(2, 2), Cells(lz, lsp)).ClearContents
For z = 2 To lsp 'lsp
Randomize
x = Int((lz * Rnd) + 1)
y = Int((lz * Rnd))
If x 


Gruß Matthias

Anzeige
AW: Randomize muss hier rein ...
16.01.2009 20:52:00
robert
hi matthias,
wäre interessant, wie du das mit randomiz löst.
bitte um den code,wenn möglich
danke und gruß
robert
wie soll es ohne Randomization funktionieren ...
16.01.2009 21:32:00
Christian
Hallo Robert,
nichts für ungut, aber ohne dem OS zu sagen, dass es mit einem weiteren Interrupt neue Zufallszahlen generieren soll, wirst du immer nur die schon bekannte Abfolge erhalten.
Matthias hat also recht, das "Randomize" kann aber außerhalb der Schleife erfolgen.
Gruß
Christian
btw: alle Variablen als Variant zu deklarieren ist hier nicht angesagt, 'indention' wäre aber hilfreich...
hast Du denn den Beitrag auch gelesen ?
16.01.2009 21:33:00
Matthias
Hallo
Ich versuche es ein letzte Mal
hier in der Datei verdeutlicht.
https://www.herber.de/bbs/user/58499.xls


und so wären es echte Zufallszahlen und nicht immer die gleichen


Sub Makro3()
Dim lz, lsp, i, x, y, z
lz = Cells(Rows.Count, 1).End(xlUp).Row
lsp = ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column
Range(Cells(2, 2), Cells(lz, lsp)).ClearContents
For z = 2 To lsp 'lsp

Randomize

x = Int((lz * Rnd) + 1)
y = Int((lz * Rnd))
If x 



Gruß Matthias
Anzeige
AW: hast Du denn den Beitrag auch gelesen ?
16.01.2009 21:47:12
robert
hi matthias,
es ist mir unerklärlich, aber es passiert- bei mir - nicht das
was du beschreibst. ich schliesse, ich öffne, die X sind immer an anderer stelle.
Tut mir leid... es ist so.
habe aber trotzdem randomize eingebaut !! :-)
danke für die geduld und noch schönen abend
gruß
robert
das kann nicht sein, weil nicht sein darf - (OT)
16.01.2009 22:42:00
Christian
AW: das kann nicht sein, weil nicht sein darf - (OT)
17.01.2009 08:35:00
robert
guten morgen,
wenn ich mit der datei arbeite, habe ich die X zB. auf B5,C3,D8
irgendwann muss ich die datei speichern
somit sind B5,C3,D8 festgeschrieben-gespeichert
wenn ich nun öffne, sind natürlich die X wieder auf B5,c3,D8
wenn ich nun weiterarbeite änder sich die daten,
wenn ich aber schliesse ohne zu speichern,
bleiben die gespeicherten daten immer noch auf B5,C3,D8
was ist daran falsch, bzw. was verstehe ich nicht?
es ist ja nicht gesagt, dass beim öffnen schon eine berechnung erfolgen soll-oder?
gruß
robert
Anzeige
Kuckuck
17.01.2009 16:08:40
Tatjana
Hallo Jungs,
Ihr sollt Euch nicht streiten, sondern mir lieber sagen, was denn nun richtig ist? Bin ein wenig verwirrt (war mein erster Beitrag und dann kommt da so eine Diskussion raus.). :-)
Wäre schön, wenn Ihr das irgendwie schafft, sonst bin ich ja verloren. :-)
Danke!
VG
Tatjana
AW: Kuckuck
17.01.2009 16:36:00
robert
hi,
du hast ja beispieldaten, welche ist denn nun so, wie du willst ?
wenn noch probleme, dann schick deine datei
gruß
robert

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige