Solved

Vb.net and Word save

Posted on 2012-03-13
12
423 Views
Last Modified: 2012-03-29
Hi,

My visual basic application fills bookmarks in a word document, I'd like to be able to open the savefiledialog in word from vb.net.

I know I can do this by adding : appWord.ActiveDocument.Save()
but I was wondering if it would be possible to define the current path that the savefiledialog starts in (the root), I already know where to save the files but I want to give the user the option to save over the file in the directory or change the name to something else.

Is this at all possible?
0
Comment
Question by:FCapo
  • 6
  • 4
  • 2
12 Comments
 
LVL 14

Expert Comment

by:systan
Comment Utility
pathfilename = "c:\ilikethisfolder\ilikethisfoldertoo\ilikethisfile.docx"
You can use Word.ActiveDocument.SaveAs2(PathFilename)
0
 

Author Comment

by:FCapo
Comment Utility
The problem is it doesn't show the dialog, it saves the document in the directory but it doesn't give the user the option to rename it or change location?
0
 
LVL 14

Expert Comment

by:systan
Comment Utility
you could use:
Word.FileDialog(MsoFileDialogType.msoFileDialogSaveAs)
0
 

Author Comment

by:FCapo
Comment Utility
How do I implement this,

If I just paste the code it says : Property access must assign to the property or use its value
0
 
LVL 14

Expert Comment

by:systan
Comment Utility
Try
Dim fd as Word.Dialog = Word.FileDialog(MsoFileDialogType.msoFileDialogSaveAs)
fd.show()
fd.something...
0
 

Author Comment

by:FCapo
Comment Utility
I'm getting an odd error message

Unable to cast COM object of type 'System.__ComObject' to interface type 'Microsoft.Office.Interop.Word.Dialog'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{000209B8-0000-0000-C000-000000000046}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 14

Expert Comment

by:systan
Comment Utility
is your activation wizard showing? i meant a not registered version?
0
 
LVL 14

Expert Comment

by:systan
Comment Utility
You could also use when word application quits:  <wdPromptToSaveChanges>

      Dim missing As Object = System.Reflection.Missing.Value
       Word.Quit(Word.WdSaveOptions.wdPromptToSaveChanges, missing, missing)

OR
you really like not using .Quit?
0
 
LVL 83

Expert Comment

by:CodeCruiser
Comment Utility
One option would be to use the .NET File Save dialog as you can customize it and once the user selects the location and gives a file name, use that with Word.ActiveDocument.SaveAs method.
0
 
LVL 14

Expert Comment

by:systan
Comment Utility
yes, right, you could use the savefilediaglog
       
Dim sfd As New SaveFileDialog
 sfd.ShowDialog()
WordApp.ActiveDocument.SaveAs2(sfd.FileName)
Great idea CodeCruiser ;-)
0
 

Author Comment

by:FCapo
Comment Utility
That's a good idea thank you,

If on the other hand I know the path to save the file and I use the following code, it sometimes gives me errors that the pathname is wrong, sometimes it works and sometimes it doesn't (sometimes it saves in the directory and most times it gives me a directory error). Why does it work randomly like this?

Dim s As String =  "S:\OUV. DOSSIER- SOUMISSION\test.doc

appWord.ActiveDocument.SaveAs(s)
0
 
LVL 83

Accepted Solution

by:
CodeCruiser earned 500 total points
Comment Utility
It looks like a network drive so network issues may sometimes prevent word from saving.
0

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

Article by: jpaulino
XML Literals are a great way to handle XML files and the community doesn’t use it as much as it should.  An XML Literal is like a String (http://msdn.microsoft.com/en-us/library/system.string.aspx) Literal, only instead of starting and ending with w…
Well, all of us have seen the multiple EXCEL.EXE's in task manager that won't die even if you call the .close, .dispose methods. Try this method to kill any excels in memory. You can copy the kill function to create a check function and replace the …
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

763 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

12 Experts available now in Live!

Get 1:1 Help Now