Problem mit array
01.06.2017 12:08:50
Ralf
Ich lasse eine ListBox mit Daten aus einer Tabelle füllen, diese Daten werden dann von der ListBox an das array übergeben.
In der ListBox waren 17 Einträge, nach dem Mischen und zurückschreiben in der Listbox aber nur noch 16 Einträge. Warum fehlt jetzt ein ganzer Datensatz ?
Ich kann mir das nicht erklären, warum der Weg ist.
Hat einer vieleicht eine Idee
Viele Grüße Ralf
Sub Mischen(vntList)
i = 1
For lngIndex = LBound(vntList, 1) To UBound(vntList, 1)
Randomize Timer
lngRnd = Int((UBound(vntList, 1)) * Rnd + 1)
vntTmp = vntList(lngIndex, 0)
vntList(lngIndex, 0) = vntList(lngRnd, 0)
vntList(lngRnd, 0) = vntTmp
Next
With Sheets("Temp")
.UsedRange.ClearContents
.Cells(1, 1).Resize(UBound(vntList), 1) = vntList
End With
'Vergleichen und ergänzen von zwei Tabellen
Dim raBereich As Range
Dim loLetzte As Long
With Worksheets("Temp")
loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Row
Set raBereich = .Range(.Cells(1, 2), .Cells(loLetzte, 2))
raBereich.FormulaLocal = "=SVERWEIS(A1;Daten!A:B;2;FALSCH)"
raBereich.Value = raBereich.Value
End With
Set raBereich = Nothing
'ListBox füllen
Dim arr As Variant
ListBox1.Clear
With Sheets("Temp")
arr = Intersect(.Range("A:B"), .Range("A1").CurrentRegion)
End With
With ListBox1
.ColumnCount = 2
.List = arr
End With