Enkele gegevens in tabel wijzigen

Status
Niet open voor verdere reacties.

keesantens

Gebruiker
Lid geworden
29 sep 2012
Berichten
17
Hallo lezers,

Ik heb de volgende code in VBA van Excel staan:


Type aRecord
Date As Long
Shift As String
Group As String
Unit As String
Capaciteit As String
Expectedproduction As String
Produced As String
Disapproved_product As String
Microstops As String
Quality As String
OEE As Double
End Type
Public Sub MaakDatabase()
Application.ScreenUpdating = False


Dim nEinde As Long
Dim nRegelteller As Long
Dim nRegel As Long
Dim aRegel(100000) As aRecord

With sheets("Afkeur")
Application.ScreenUpdating = False
nEinde = .Range("A100000").End(xlUp).Row
nRegelteller = 1
nRegel = 0
With .Range("A1")
Do While nRegelteller <= nEinde

If Val(.Offset(nRegelteller, 0)) > 0 Then


aRegel(nRegel).Microstops = .Offset(nRegelteller, 6)
aRegel(nRegel).Disapproved_product = .Offset(nRegelteller, 9)
aRegel(nRegel).Quality = .Offset(nRegelteller, 12)
aRegel(nRegel).OEE = .Offset(nRegelteller, 14)

nRegel = nRegel + 1
End If
nRegelteller = nRegelteller + 1
Loop
End With
End With

nRegelteller = 0
With sheets("Tijd").Range("A2")
Application.ScreenUpdating = False
Do While nRegelteller < nRegel

.Offset(nRegelteller, 78) = aRegel(nRegelteller).Microstops
.Offset(nRegelteller, 83) = aRegel(nRegelteller).Disapproved_product
.Offset(nRegelteller, 86) = aRegel(nRegelteller).Quality
.Offset(nRegelteller, 87) = aRegel(nRegelteller).OEE

nRegelteller = nRegelteller + 1
Loop

End With

Application.ScreenUpdating = False

End Sub

Het duurt een hele tijd zeker enkele 10 minuten om zo'n enkel wijzigingen (zo'n 3 wijzigingen) in een tabel door te voeren (tabel bestaat uit zo'n 8000 records, worden alleen maar meer).:eek:
Hoe kun je de tijd aanzienlijk verkorten??:)
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan