• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 225
  • Last Modified:

Mass e-mail subject renaming macro run-time error 13

I recently added this macro to my 2003 outlook visual basic editor.  It has been a real Godsend and has been exactly what I have been looking for after months of searching.  Thank You Blue Devil Fan for the code.

The macro worked flawlessly for weeks, then all of the sudden I am getting the following message:

Run-time err '13'

Type mismatch

The macro then gives me the option to debug the code.  When that is selected, the visual basic editor highlights code line #16, which is the last "Next" in the code.

I researched this problem, and Microsoft recommended installing service pack #3 for Office 2003, and service pack #3 for Windows XP.  I did both and nothing is working.  

I desperately need this macro to work again.

Please let me know if you have any recommendations.

Thank You Expert!
Sub FixSubjectLineV2()
    Const MACRONAME = "Fix Subject Line"
    Dim olkMsg As Outlook.MailItem, _
        olkItems As Outlook.Items, _
        strSubject As String, _
        strNewSub As String
    strSubject = InputBox("What word/phrase do you want me to search for?", MACRONAME)
    strNewSub = InputBox("What text do you want to replace the word/phrase with?", MACRONAME)
    If strSubject <> "" Then
        Set olkItems = Application.ActiveExplorer.CurrentFolder.Items
        For Each olkMsg In olkItems
            If InStr(1, olkMsg.Subject, strSubject) Then
                olkMsg.Subject = Replace(olkMsg.Subject, strSubject, strNewSub)
                olkMsg.Save
            End If
        Next
    End If
    Set olkItems = Nothing
    Set olkMsg = Nothing
    MsgBox "All done!", vbInformation + vbOKOnly, MACRONAME
End Sub

Open in new window

0
jrehrman
Asked:
jrehrman
  • 2
1 Solution
 
David LeeCommented:
Hi, jrehman.

The problem is almost certainly caused by a non-mail item in the folder your processing.  For example a read receipt or delivery report.  There are two ways to cure this.  

1.  Make sure the folder only contains mail items.
2.  Change "Outlook.MailItem" on line 3 to "Object".

You're welcome for the code.  I'm glad you found it useful.
0
 
jrehrmanAuthor Commented:
Thank You Thank You Thank You!!!

Thank You so much for quick response.

I opted for solution number 2 and it works awweessoommee!!!

:-)

I look forward to being productive again.

Thank You Blue Devil Fan!

0
 
David LeeCommented:
You're welcome!
0

Featured Post

What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now