Anzeige
Archiv - Navigation
1764to1768
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 Vlookup

VBA Vlookup
16.06.2020 23:28:35
DrVirti
Hallo zusammen,
ich versuche gerade eine Zeitreihe zu Simulieren die nach Zufallszahlen Ergebnisse aus einer _ Tabelle zieht. Leider funktioniert die Schleife nicht und ich verstehe nicht wieso. Die VLOOKUP Funktion funktioniert nicht. Leider habe ich im Forum nichts gefunden weil das meines Erachtens nach eigentlich passen sollte. Hier mein code:

Sub Simulation_2()
Dim m As Long 'Zähler Tag in RHP
For m = 407 To 10 Step -1
Worksheets("Simulation").Cells(3, m).Value = Int(((12 - 1 + 1) * Rnd) + 1)
Worksheets("Simulation").Cells(4, m).Value = WorksheetFunction.VLookup(Worksheets(" _
Simulation").Cells(3, m), Worksheets("hist_ret_underlying").Range(Cells(6, 4), Cells(17, 5)), 2, _
_
False)
Next m
MsgBox "Simulation abgeschlossen"
End Sub

Kann mir da jemand helfen?
Gruß

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Vlookup
17.06.2020 00:05:56
Daniel
Mal wieder der klassische anfängerfehler.
Definiert man einen Zellbereich mit Range(Cells(), Cells()) und will dass dieser auf einem bestimmten Blatt liegt, so muss man das Tabellenblatt vor den beiden Cells hinschreiben!
Gruß Daniel
AW: VBA Vlookup
17.06.2020 00:24:56
GerdL
Moin, ungetestet:
Sub Simulation_3()
Dim m As Long 'Zähler Tag in RHP
Dim S As Worksheet, H As Worksheet
Set S = Worksheets("Simulation")
Set H = Worksheets("hist_ret_underlying")
For m = 407 To 10 Step -1
S.Cells(3, m).Value = Int(((12 - 1 + 1) * Rnd) + 1)
S.Cells(4, m).Value = _
WorksheetFunction.VLookup _
(S.Cells(3, m), H.Range(H.Cells(6, 4), H.Cells(17, 5)), 2, False)
Next m
MsgBox "Simulation abgeschlossen"
End Sub

Gruß Gerd
Anzeige
AW: VBA Vlookup
17.06.2020 00:33:10
DrVirti
Hallo zusammen,
vielen Dank für die schnelle Antwort. Das funktioniert hervorragend. Leider habe ich gleich das nächste Problem um die Abfrage fertigzustellen. Ich wollte einen Wert eingeben der vorher in einer Zelle eingetragen wird. Der soll von allen rausgesuchten Werte abgezogen werden. Leider bekomme ich den Fehler, dass ich das Objekt nicht definiert hätte.
Dim rfr As Single
Set rfr = Worksheets("Simulation").Range("B6").Value
Ich habe schon viele Makros zusammengebastelt aber leider nicht sonderlich viel Ahnung wie mir gerade auffällt.
Gruß
AW: VBA Vlookup
17.06.2020 07:45:13
Daniel
Set wird nur bei Objektvariablen verwendet, nicht bei Werten.
Gruß Daniel
Anzeige
AW: VBA Vlookup
17.06.2020 16:40:18
Gerd
Moin
Sub Simulation_4()
Dim m As Long 'Zähler Tag in RHP
Dim S As Worksheet, H As Worksheet
Dim rfr As Double
Set S = Worksheets("Simulation")
Set H = Worksheets("hist_ret_underlying")
rfr = S.Range("B6").Value
For m = 407 To 10 Step -1
S.Cells(3, m).Value = Int(((12 - 1 + 1) * Rnd) + 1)
S.Cells(4, m).Value = _
WorksheetFunction.VLookup _
(S.Cells(3, m), H.Range(H.Cells(6, 4), H.Cells(17, 5)), 2, False) _
- rfr
Next m
MsgBox "Simulation abgeschlossen"
End Sub

Gruß Gerd

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige