Geacht forum,
onderstaande code gebruik ik om een lay-out van een excelsheet op te bouwen.
Echter het duurt circa 15 seconden voordat hij klaar is.
Weten jullie een snellere manier?
Aantal gebruikte kolommen in wsc = 100
mvg,
Aat
onderstaande code gebruik ik om een lay-out van een excelsheet op te bouwen.
Echter het duurt circa 15 seconden voordat hij klaar is.
Weten jullie een snellere manier?
Aantal gebruikte kolommen in wsc = 100
mvg,
Aat
Code:
Sub Test()
With Application
.ScreenUpdating = False
.EnableEvents = False
.calculation = xlCalculationManual
.DisplayAlerts = False
End With
Set wsc = Sheets("Tracker")
Set wsu = Sheets("Table")
For Each r In wsc.Rows(2).SpecialCells(xlCellTypeConstants)
Set C = wsu.Range("A1:A120").Find(r, LookIn:=xlFormulas, Lookat:=xlWhole)
If Not C Is Nothing Then
If C.Offset(0, getcol - 1) = "x" Then
If C.Offset(0, 3) = "l" Then
wsc.Columns(r.Column).HorizontalAlignment = xlLeft
ElseIf C.Offset(0, 3) = "c" Then
wsc.Columns(r.Column).HorizontalAlignment = xlCenter
ElseIf C.Offset(0, 3) = "r" Then
wsc.Columns(r.Column).HorizontalAlignment = xlRight
End If
If C.Offset(0, 2) = "d" Then
wsc.Columns(r.Column).NumberFormat = "dd-mm-yy"
ElseIf C.Offset(0, 2) = "dt" Then
wsc.Columns(r.Column).NumberFormat = "dd-mm-yy h:mm"
ElseIf C.Offset(0, 2) = "n" Then
wsc.Columns(r.Column).NumberFormat = "#,##0"
ElseIf C.Offset(0, 2) = "n2" Then
wsc.Columns(r.Column).NumberFormat = "#,##0.00"
ElseIf C.Offset(0, 2) = "t" Then
wsc.Columns(r.Column).NumberFormat = "General"
End If
Else
wsc.Columns(r.Column).ColumnWidth = 0
End If
End If
Next
With Application
.ScreenUpdating = True
.EnableEvents = True
.calculation = xlCalculationAutomatic
.DisplayAlerts = True
End With
End Sub