Remove all PST from the Outlook Mailbox using VBScript

If you would like to remove all of the Personal Folders file .PSTs attached to the Outlook Mailbox profile then we can use RemoveStore Method.

Here is a sample VBScript to perform the job for us:

NOTE: Following programming examples is for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This sample code assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. This sample code is provided for the purpose of illustration only and is not intended to be used in a production environment.

'Sample script to remove Personal Folders files (.pst) from the current MAPI profile or session
Sub RemoveAllPST()
Dim objOL 'As New Outlook.Application
Dim objFolders 'As Outlook.MAPIFolders
Dim objFolder 'As Outlook.MAPIFolder
Dim i 'As Interger
Dim strPrompt 'As String
Set objOL = CreateObject("Outlook.Application")
Set objFolders = objOL.Session.Folders
For i = objFolders.Count To 1 Step -1
On Error Resume Next
    Set objFolder = objFolders.Item(i)
    'Prompt the user for confirmation
    If (InStr(1, objFolder.Name, "Mailbox") = 0) And (InStr(1, objFolder.Name, "Public Folders") = 0) Then
    strPrompt = ""
    strPrompt = "Are you sure you want to remove " & objFolder.Name
    If MsgBox(strPrompt, vbYesNo + vbQuestion) = vbYes Then
        objOL.Session.RemoveStore objFolder
    End If
    End If
End Sub

We can also refer to the article mentioned below related to RemoveStore Method:

NameSpace.RemoveStore Method

Hope this helps.

Skip to main content