Solved

Problem saving the active document under a different name in Word with VBA

Posted on 2013-01-31
5
1,136 Views
Last Modified: 2013-02-01
Running VBA in Word (2010) under Windows 7, I have a VBA program that tries to save the active document under a different name than its current name. The active document can be a *.doc file or a *.docx file. We set the Boolean OldFormat to True if it is in the Word97 *.doc format. Otherwise the document has been generated with Word 2007 or later.
     Here is the code that is giving me problems:

     If OldFormat Then
            ActiveDocument.SaveAs2 FileName:=Path & TargetName, FileFormat:= _
                  wdFormatDocument, AddToRecentFiles:=True
      Else
            ActiveDocument.SaveAs2 FileName:=Path & TargetName, FileFormat:= _
                  wdFormatXMLDocumentMacroEnabled, AddToRecentFiles:=True
      End If

     With a *.doc file, OldFormat = TRUE, so if we step through the code above, control goes to the first of those two “ActiveDocument.SaveAs2” commands. This code works perfectly on my computer, but on another computer I get an error 438 message: “Object does not support this property or method” at that point. The Path appears to be correct, the TargetName is a valid filename, WdFormatDocument = 0.
     What could be causing the 438 error?

jra
0
Comment
Question by:JohnRobinAllen
  • 2
  • 2
5 Comments
 
LVL 76

Accepted Solution

by:
GrahamSkan earned 500 total points
ID: 38842036
I get that error on my computer if I use SaveAs2. That is because I only have Word 2007. To run under all releases from Word 97 onwards, use SaveAs.
0
 
LVL 59

Expert Comment

by:Chris Bottomley
ID: 38842628
Can you confirm if the other computer is also 2010 ... if it's 2007 then see Grahams comment.  If it is a 2010 install then it may be the path at fault.

Chris
0
 

Author Comment

by:JohnRobinAllen
ID: 38843773
I'll confirm that information after the other party is awake. I'm typing this at 7:30 a.m. in Priddis, Alberta (Mountain time) and he is in Seattle (Pacific Time, 6:30 a.m.), so it is too early to reach him now.
     I had the same results with another friend in Winnipeg (Central Standard Time, 8:30 a.m.), but I cannot contact him until others here are awake too.
          I strongly suspect that Graham Skan's solution will solve the problem and that the path is correct.
     There is another problem that I may pose in a separate question: the person in Seattle is having trouble reading a variable stored in the document, but I will save the details for later (not with this query). His computer reads the variable but then it fails a test in an "If" statement. If I cannot find out what is wrong with that, I'll give full details in another query.
0
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 38843837
JRA,
SaveAs2 accepts an extra argument - CompatibilityMode. If you don't need to use it, you can stick to the old SaveAs method.

It sounds interesting, but I have a feeling that you will be able to solve your Seattle contact's problem yourself.
0
 

Author Closing Comment

by:JohnRobinAllen
ID: 38845602
This is the solution. However G.S. supplies further useful information about the command in a message below.

Once again, many thanks to GS and to EE!
Appreciation also to CB. He could have found a cause of the problem but the problem lay elsewhere.

j.r.a.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction Authors who set out to write any sort of lengthy piece for online submission—be it a long question or comment on a technical form, an article, or a substantial blog entry—often find it useful to work up a draft in an editor other t…
Preface: When I started this series, I used the term CommandBars because that is the Office Object class that it discusses. Unfortunately, when Microsoft introduced Office 2007, they replaced the standard Commandbar menus with "The Ribbon" and rem…
This video walks the viewer through the process of creating a watermark for their document, customizing it, and saving it for viewing/printing needs.
The viewer will learn how to make their project stand out over others by learning how to change colors and shapes, add spaces, change directions, and add bullets to their charts.

932 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now