Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1692to1696
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

VBA - mit Zufallszahl addieren

VBA - mit Zufallszahl addieren
27.05.2019 14:34:55
Fred

Hallo Excel-Profis,
... wenn ich mit VBA arbeite, ist im Ergebnis oft alles Zufall :-)
daran angelehnt meine Anfrage:
Ich habe von den Spalten "GO:GS" (beginnend ab "GO2" Zahlen mit 2 Nachkommastellen.
Ich würde diesen Zahlen gerne jeweils einen Wert im Bereich zwischen
-0,05 und +0,05 zurechnen. - rein zufäälig, nicht nachvollziehbar.
Gibt es dafür einen "einfachen Code"?
https://www.herber.de/bbs/user/130054.xlsb
Mit freundlichen Gruß
Fred Neumann

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - mit Zufallszahl addieren
27.05.2019 14:53:52
onur
Immer die gleiche Zahl, jede Zelle andere Zahl, oder jede Zeile andere Zahl?
AW: VBA - mit Zufallszahl addieren
27.05.2019 15:02:11
Fred
Hallo Onur,
"jede Zelle andere Zahl" zeigt wohl am entferntesten, ein dahinter stehendes System.
Gruß
Fred
AW: VBA - mit Zufallszahl addieren
27.05.2019 15:04:24
UweD
Hallo
dann so....
Sub Zufall()
    Dim LR As Long, RNG As Range, Z
    
    LR = Cells(Rows.Count, "A").End(xlUp).Row 'letzte Zeile der Spalte 
    
    Set RNG = Range("GO2").Resize(LR - 1, 5)
    
    For Each Z In RNG
        Z.Value = Z.Value + (Int((5 * Rnd) - 5) / 100)
    Next

End Sub


LG UweD
Anzeige
AW: VBA - mit Zufallszahl addieren
27.05.2019 15:11:36
Fred
Hallo UweD,
nicht schlecht, allerdings werden nur Werte substrahiert, - es sollte aber auch (zufällig) addiert werden.
Gruß
Fred
AW: VBA - mit Zufallszahl addieren
27.05.2019 15:13:55
onur
Z.Value = Z.Value + (Int((10 * Rnd) - 5) / 100)
AW: VBA - mit Zufallszahl addieren
27.05.2019 15:22:59
Fred
Super Onur,
genau das ist es!!
.. der entscheidene Unterschied zu UweD's

Z.Value = Z.Value + (Int((5 * Rnd) - 5) / 100)
.. danke euch beiden für die Mühe!!
Gruß
Fred
PS: Manchmal wird der Zufall als Schnittpunkt von Kausalketten oder von Notwendigkeiten betrachtet. Ein drastisches Beispiel dafür ist das Zusammentreffen von zwei Autos bei einem Verkehrsunfall. Wenn damit nur die Objektivität des zufälligen Zusammenhangs betont und die Dialektik von Notwendigkeit und Zufall berücksichtigt werden soll, ergeben sich keine Einwände gegen diese Interpretation.
... na, dann ist ja alles klar!
Anzeige
Hinterfragung der Lösung(sverteilung)...
27.05.2019 15:57:31
EtoPHG
Hallo zusammen,
Diese Formel ergibt aber NIE +0.5, weil die Zufallszahl im Bereich 0.. D.h. auch, dass die Anzahl -Werte ca. ~10% unterbewertet sind!
Wenn schon ein ZUFALLSBEREICH(-5,5)/100 anwenden, oder die Berechnung mit ZUFALLSZAHL ändern auf:
+ (Int((11 * Rnd) - 5) / 100)

Achtung: In beiden Fällen wird in ~10% aller Fälle 0 dazuaddiert!
Gruess Hansueli
AW: Hinterfragung der Lösung(sverteilung)...
27.05.2019 16:02:04
onur
Stimmt, aber ich glaube, das ist ihm ziemlich egal, ob die Zufallszahl irgendwann exakt 0,500000 ist oder nicht.
Ein sehr gewagte Interpretation von Zufall! (owT)
27.05.2019 16:04:44
Zufall!

AW: Hinterfragung der Lösung(sverteilung)...
27.05.2019 16:03:00
Fred
Hallo Hansueli,
recht hast du,- und das ist kein Zufall :-)
Danke!
Gruß
Fred
Anzeige
AW: VBA - mit Zufallszahl addieren
27.05.2019 16:11:52
UweD
Hallo
so ginge es auch

Sub Zufall()
Dim LR As Long, RNG As Range, Z
LR = Cells(Rows.Count, "A").End(xlUp).Row 'letzte Zeile der Spalte
Set RNG = Range("GO2").Resize(LR - 1, 5)
For Each Z In RNG
Z.Value = Z.Value + WorksheetFunction.RandBetween(-5, 5) / 100
Next
End Sub

LG UweD
Randomize Timer nicht vergessen
27.05.2019 16:59:30
Daniel
HI
wenn man mit der VBA-Funktion RND arbeitet, sollte man nicht vergessen, zu beginn ein
Randomize Timer 

auszuführen. Ansonsten bekommt man nach jedem Öffnen der Datei die gleichen "Zufallszahlen"
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige