Scenario
I have a userform, and when a button is pressed, it opens an Excel file as read-only, gets some values, and closes that file. Following are the
After many checks, it is found out that issue is not due to any codes. It is purely because of I am opening and closing a shared workbook. This type of issues are common when use shared workbooks. So it is best to avoid usage of shared workbooks.
During these process some items I did to clear memory issue are
Clear out variables and objects immediately after their usage.
Eg: Set wb = nothing
Open workbooks as read only whenever possible.
Eg: Set wb = Workbooks.Open(blanketPo, ReadOnly:=True)
ByRef
instead of ByVal
whenever possible while passing data. But please take care of the implication also when use these twoApplication.CutCopyMode = False
Use the following code to empty clip board such as object and stuffs which were copied and keeping in clipboard while running macro. I got this code from another forum
Dim DataObj As New MSForms.DataObject 'empty the clipboard
DataObj.SetText ""
DataObj.PutInClipboard
Anyway the moment I choose not to use shared workbook, most of the memory and hang up issues disappeared. So its mostly all about the buggy shared workbook.