Hvorfor kører denne VBA kode langsomt?
HejEr der en der kan hjælpe mig med at gøre nedenstående kode hurtigere. Den er pludselig blevet meget langsom (primært efter at jeg har anvendt vis udskrift efter åbning af filen).
'Indeks 1-5
Sub L15()
Start
Ark2.Range("b2") = "'1-5"
Ark2.Range("a2") = 5
Ark2.Range("IndexType") = 1
RowHeight
ColumnsShow
Font
End Sub
'Indeks 1-6
Sub L16()
Start
Ark2.Range("b2") = "'1-6"
Ark2.Range("a2") = 6
Ark2.Range("IndexType") = 1
RowHeight
ColumnsShow
Font
End Sub
'Indeks 1-10
Sub L110()
Start
Ark2.Range("b2") = "'1-10"
Ark2.Range("a2") = 10
Ark2.Range("IndexType") = 1
RowHeight
ColumnsShow
Font
End Sub
'Indeks 1-12
Sub L112()
Start
Ark2.Range("b2") = "'1-12"
Ark2.Range("a2") = 12
Ark2.Range("IndexType") = 1
RowHeight
ColumnsShow
Font
End Sub
'Indeks 12-1
Sub L121()
Start
Ark2.Range("b2") = "'12-1"
Ark2.Range("a2") = 12
Ark2.Range("IndexType") = 3
RowHeight
ColumnsShow
Font
End Sub
'Indeks 1-15
Sub L115()
Start
Ark2.Range("b2") = "'1-15"
Ark2.Range("a2") = 15
Ark2.Range("IndexType") = 1
RowHeight
ColumnsShow
Font
End Sub
'Indeks 1-20
Sub L120()
Start
Ark2.Range("b2") = "'1-20"
Ark2.Range("a2") = 20
Ark2.Range("IndexType") = 1
RowHeight
ColumnsShow
Font
End Sub
'Indeks 1-31
Sub L131()
Start
Ark2.Range("b2") = "'1-31"
Ark2.Range("a2") = 31
Ark2.Range("IndexType") = 1
RowHeight
ColumnsShow
Font
End Sub
'Indeks 1-54
Sub L154()
Start
Ark2.Range("b2") = "'1-54"
Ark2.Range("a2") = 54
Ark2.Range("IndexType") = 1
RowHeight
ColumnsShow
Font
End Sub
'Indeks Jan-Dec
Sub JanDec()
Start
Ark2.Range("b2") = "Jan-Dec"
Ark2.Range("a2") = 12
Ark2.Range("IndexType") = 4
RowHeight
ColumnsShow
Font
End Sub
'Indeks A-Å
Sub AÅ()
Start
Ark2.Range("b2") = "A-Å"
Ark2.Range("a2") = 20
Ark2.Range("IndexType") = 2
RowHeight
ColumnsShow
Font
End Sub
Sub RowHeight()
Ark3.Select
I = 1
For I = 1 To 54
With Ark3.Rows(I)
.RowHeight = Range("H" & I).Value
End With
Next I
End Sub
Sub ColumnsShow()
Ark3.Select
'Columnwidth
Columns("B:E").ColumnWidth = Ark2.Range("ColumnWidthIndex").Value
Columns("F:F").ColumnWidth = Ark2.Range("ColumnWidthText").Value
'Reset Hidden columns
If Columns("B:B").EntireColumn.Hidden = False Then
Columns("B:B").EntireColumn.Hidden = True
End If
If Columns("C:C").EntireColumn.Hidden = False Then
Columns("C:C").EntireColumn.Hidden = True
End If
If Columns("D:D").EntireColumn.Hidden = False Then
Columns("D:D").EntireColumn.Hidden = True
End If
If Columns("E:E").EntireColumn.Hidden = False Then
Columns("E:E").EntireColumn.Hidden = True
End If
'Hide columns
If Ark2.Range("IndexType").Value = 1 Then
Columns("B:B").EntireColumn.Hidden = False
End If
If Ark2.Range("IndexType").Value = 2 Then
Columns("C:C").EntireColumn.Hidden = False
End If
If Ark2.Range("IndexType").Value = 3 Then
Columns("D:D").EntireColumn.Hidden = False
End If
If Ark2.Range("IndexType").Value = 4 Then
Columns("E:E").EntireColumn.Hidden = False
End If
End Sub
'Font settings
Sub Font()
Ark3.Columns("B:E").Select
With Selection.Font
.Name = "Arial"
.Size = Ark2.Range("FontIndex").Value
End With
Ark3.Columns("F:F").Select
With Selection.Font
.Name = "Arial"
.Size = Ark2.Range("FontText").Value
End With
Ark3.Range("F1").Select
Application.ScreenUpdating = True
End Sub
Sub Start()
Application.ScreenUpdating = False
End Sub
