M
MichaelLove
This is one of the Macro's that runs extremely slow in my
workbook when it is in shared format.
Sub ProductsUpdate()
Application.ScreenUpdating = False
Dim myRng As Range
Dim lastRw As Long
'get the last row with an entry
If ActiveSheet.[B11] = 0 Then
ActiveSheet.[B11].Formula = "1"
End If
ActiveSheet.[B9:B10].Formula = "1"
lastRw = ActiveSheet.[B9].End(xlDown).Row
ActiveSheet.[B12:AS400].Sort Key1:=Range("B12"),
Order1:=xlDescending, Orientation:=xlTopToBottom
With ActiveSheet.[BF11]
.Formula = "=IF(AND($B11>=$AT$1,$B11<=$AU$1),L11,)"
.AutoFill Destination:=ActiveSheet.[BF11:CM11]
End With
With ActiveSheet.[CN11]
.Formula = "=IF(AND($B11>=$AT$1,$B11<=$AU$1),D11,)"
.AutoFill Destination:=ActiveSheet.[CN11:CU11]
End With
ActiveSheet.[BF11:CU11].Copy
Destination:=ActiveSheet.Range("BF12:BF" & lastRw&)
ActiveSheet.[BF6:CU6].Copy
ActiveSheet.[BF7].PasteSpecial Paste:=xlValues
ActiveSheet.Range("BF11:CU" & lastRw&).ClearContents
Application.CutCopyMode = False
End Sub
workbook when it is in shared format.
Sub ProductsUpdate()
Application.ScreenUpdating = False
Dim myRng As Range
Dim lastRw As Long
'get the last row with an entry
If ActiveSheet.[B11] = 0 Then
ActiveSheet.[B11].Formula = "1"
End If
ActiveSheet.[B9:B10].Formula = "1"
lastRw = ActiveSheet.[B9].End(xlDown).Row
ActiveSheet.[B12:AS400].Sort Key1:=Range("B12"),
Order1:=xlDescending, Orientation:=xlTopToBottom
With ActiveSheet.[BF11]
.Formula = "=IF(AND($B11>=$AT$1,$B11<=$AU$1),L11,)"
.AutoFill Destination:=ActiveSheet.[BF11:CM11]
End With
With ActiveSheet.[CN11]
.Formula = "=IF(AND($B11>=$AT$1,$B11<=$AU$1),D11,)"
.AutoFill Destination:=ActiveSheet.[CN11:CU11]
End With
ActiveSheet.[BF11:CU11].Copy
Destination:=ActiveSheet.Range("BF12:BF" & lastRw&)
ActiveSheet.[BF6:CU6].Copy
ActiveSheet.[BF7].PasteSpecial Paste:=xlValues
ActiveSheet.Range("BF11:CU" & lastRw&).ClearContents
Application.CutCopyMode = False
End Sub