schlechte Performance, aber warum?
04.06.2002 08:44:45
rainer
Vielen Dank
Rainer
Hier das Coding:
tb1.Select
With tb1.Range("a6:aa6")
Set zelle = .Find("PI", LookIn:=xlValues)
If Not zelle Is Nothing Then
quellspalte_pi = zelle.Column
End If
Set zelle = .Find("V0", LookIn:=xlValues)
If Not zelle Is Nothing Then
quellspalte_v0 = zelle.Column
End If
End With
'-------------------------------------------------------------
'----werte in Indexverlauf eintragen
'-------------------------------------------------------------
For Each zelle In tb1.Range(Cells(7, 25), Cells(lr_download, 25))
schlüssel = zelle.Value
rewert = Cells(zelle.Row, quellspalte_v0).Value
Index = Cells(zelle.Row, quellspalte_pi).Value
mat = Cells(zelle.Row, 5).Value
lief = Cells(zelle.Row, 3).Value
lname = Cells(zelle.Row, 4).Text
On Error Resume Next
zeile_gefunden = Application.Match(schlüssel, arr_bereich, 0)
'--wenn treffer, dann wert in zeile eintragen
If zeile_gefunden > 0 Then
'-------> hier ist mein Problem!!!!!!!!!!!!!!!!!!!
tb2.Cells(zeile_gefunden, spalte).Value = Index
tb2.Cells(zeile_gefunden, spalte + 1).Value = rewert
'---ab hier geht es wieder zügig
End If
'-- wenn kein treffer, dann neue zeile
If zeile_gefunden < 1 Then
lr_index = tb2.Cells(Rows.Count, 1).End(xlUp).Row
tb2.Cells(lr_index + 1, spalte).Value = Index
tb2.Cells(lr_index + 1, spalte + 1).Value = rewert
tb2.Cells(lr_index + 1, 2).Value = lief
tb2.Cells(lr_index + 1, 4).Value = mat
tb2.Cells(lr_index + 1, 3).Value = lname
tb2.Cells(lr_index + 1, 1).Formula = "=CONCATENATE(B" & lr_index + 1 & ",D" & lr_index + 1 & ")"
End If
Next zelle