#1
|
|||
|
|||
Save Document as Text File
Hello! I'm new here and to be frank, I have no clue how vba works. Nevertheless I need to solve a particular problem. I tested the script in https://www.msofficeforums.com/word-...rent-file.html to save the current .docx firl as .txt. It works quite right. Nevertheless the new file always is stored in the root documents folder. Not in the folder in which the to be converted file is saved. How can I solve this problem? I need the file to be in the same directory. In addtion: I would afterwards have to open the txt file in the standard application for .txt files. (maybe word is closing in the same moment). Can anyon provide a solution for that. |
#2
|
||||
|
||||
Use instead:
Code:
Sub saveastxt() Dim RetVal As Object Dim strName As String On Error Resume Next ActiveDocument.Save If ActiveDocument.Path = "" Then MsgBox "Document not saved!" GoTo lbl_Exit End If strName = Replace(ActiveDocument.FullName, ".docx", ".txt") ActiveDocument.SaveAs2 FileName:=strName, FileFormat:=wdFormatText ActiveDocument.Close 0 RetVal = Shell("notepad.exe " & strName, 1) lbl_Exit: Exit Sub End Sub
__________________
Graham Mayor - MS MVP (Word) (2002-2019) Visit my web site for more programming tips and ready made processes www.gmayor.com |
#3
|
|||
|
|||
Thank you so much. Works like a charm. Just two things would top it all. 1)The docx file closes 2)The docx file is deleted. I will try to figure it out, but would appreciate help nevertheless. Thank you. gerald
|
#4
|
|||
|
|||
Do you mean the .txt file closes because the docx file already was closing:
Code:
Sub saveastxt() Dim RetVal As Object Dim strDelete As String Dim strName As String On Error Resume Next ActiveDocument.Save If ActiveDocument.Path = "" Then MsgBox "Document not saved!" GoTo lbl_Exit End If strDelete = ActiveDocument.FullName strName = Replace(ActiveDocument.FullName, ".docx", ".txt") ActiveDocument.SaveAs2 FileName:=strName, FileFormat:=wdFormatText ActiveDocument.Close 0 'RetVal = Shell("notepad.exe " & strName, 1) 'Don't open the saved .txt file Kill strDelete lbl_Exit: Exit Sub End Sub |
#5
|
|||
|
|||
Thank you so much. Works Great! Gerald
|
#6
|
|||
|
|||
Save doc as text
Hi Again! I experience problems with *.doc Documents. The file is deleted, the txt file is not created. The application to open the new file renders the warning, that the file could not be found.... made several testruns and could reduce it to simply to the *.doc file. *.docx works fine. I even changed the makro where ther is *.docx to *.doc. but it didn't solve the issue.
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Word VBA - Split Document By Headings - Save File Name As Heading Name | jc491 | Word VBA | 7 | 01-21-2022 11:04 AM |
Corrupted file? I'm unable to save changes to Word document | MikeW | Word | 4 | 02-08-2017 09:41 AM |
Vba code to save document as pdf using document property text and rename folder. | staicumihai | Word VBA | 1 | 12-21-2015 07:39 AM |
VBA save a NEW unsave document without prompting user for a file name | KSP | Word VBA | 5 | 09-02-2014 01:42 PM |
Word Macro: Save file as text with current file name | jabberwocky12 | Word VBA | 2 | 10-22-2010 12:23 PM |