Geachte kenners,
Ik ben een macro aan het maken waarbij ik eerst een range selecteer in een sheet.
Iedere waarde in de selectie moet gezocht worden.
In een andere sheet ga ik op iedere waarde filteren.
De data die dan zichtbaar wordt moet geheel geselecteerd worden en gecopieerd naar een andere sheet onder aansluitend aan de al bestaande data.
Mijn macro werkt, maar om 1000 waarden te doen is hij ± een half uur bezig. Aangezien ik 87000 waarden moet doen gaat dit ruim 40 uur lopen.
Iedere regel sluit ik zowat met select. Dus dit werkt vertragend.
Ik heb op verschillende plaatsen gezien dat je selecteren zoveel mogelijk moet voorkomen en dit lukt me gedeeltelijk.
Alleen op het moment dat ik met XLenddown en XLendup ga werken loopt mijn macro vast.
Kan iemand eens naar mijn trage code kijken en hem mogelijk aanpassen.
De code na REM was eerst bedoeld om alle waarden ±87000 stuks in een keer te doen, maar dit liep dus veel te lang.
Hopelijk lukt het iemand van jullie.
Alvast bedankt
TonRo
Ik ben een macro aan het maken waarbij ik eerst een range selecteer in een sheet.
Iedere waarde in de selectie moet gezocht worden.
In een andere sheet ga ik op iedere waarde filteren.
De data die dan zichtbaar wordt moet geheel geselecteerd worden en gecopieerd naar een andere sheet onder aansluitend aan de al bestaande data.
Mijn macro werkt, maar om 1000 waarden te doen is hij ± een half uur bezig. Aangezien ik 87000 waarden moet doen gaat dit ruim 40 uur lopen.
Iedere regel sluit ik zowat met select. Dus dit werkt vertragend.
Ik heb op verschillende plaatsen gezien dat je selecteren zoveel mogelijk moet voorkomen en dit lukt me gedeeltelijk.
Alleen op het moment dat ik met XLenddown en XLendup ga werken loopt mijn macro vast.
Kan iemand eens naar mijn trage code kijken en hem mogelijk aanpassen.
Code:
Sub Macro2()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
Z = Time
Sheets("Straatnamen2").Select
Range("C3401:C4400").Select
Rem Range(Selection, Selection.End(xlDown)).Select
For Each Cell In Selection
a = Cell.Value
Sheets("Postcodes").Select
ActiveSheet.ListObjects("Tabel_Postcodes1").Range.AutoFilter Field:=4, _
Criteria1:=a
Range("A1").Select
Selection.Offset(1, 0).Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.Copy
Sheets("Postcodes2").Select
Range("A1").Select
Selection.End(xlDown).Select
Selection.End(xlDown).Select
Selection.End(xlUp).Select
Selection.Offset(1, 0).Select
ActiveSheet.Paste
Sheets("Straatnamen2").Select
Next
y = Time
MsgBox ("Klaar, " & "de starttijd = " & Z & " de eindtijd = " & y)
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End Sub
De code na REM was eerst bedoeld om alle waarden ±87000 stuks in een keer te doen, maar dit liep dus veel te lang.
Hopelijk lukt het iemand van jullie.
Alvast bedankt
TonRo