?
Solved

Vb.net and Word save

Posted on 2012-03-13
12
Medium Priority
?
459 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 4
  • 2
12 Comments
 
LVL 14

Expert Comment

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

Author Comment

by:FCapo
ID: 37716409
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
ID: 37716606
you could use:
Word.FileDialog(MsoFileDialogType.msoFileDialogSaveAs)
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 

Author Comment

by:FCapo
ID: 37716659
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
ID: 37716682
Try
Dim fd as Word.Dialog = Word.FileDialog(MsoFileDialogType.msoFileDialogSaveAs)
fd.show()
fd.something...
0
 

Author Comment

by:FCapo
ID: 37716719
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
 
LVL 14

Expert Comment

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

Expert Comment

by:systan
ID: 37716855
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
ID: 37717718
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
ID: 37717869
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
ID: 37725274
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 1000 total points
ID: 37726164
It looks like a network drive so network issues may sometimes prevent word from saving.
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

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

If you're writing a .NET application to connect to an Access .mdb database and use pre-existing queries that require parameters, you've come to the right place! Let's say the pre-existing query(qryCust) in Access takes a Date as a parameter and l…
Parsing a CSV file is a task that we are confronted with regularly, and although there are a vast number of means to do this, as a newbie, the field can be confusing and the tools can seem complex. A simple solution to parsing a customized CSV fi…
In this video, Percona Solution Engineer Dimitri Vanoverbeke discusses why you want to use at least three nodes in a database cluster. To discuss how Percona Consulting can help with your design and architecture needs for your database and infras…
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …
Suggested Courses

649 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