2012-07-13 6 views
0

그래서 내가하려는 것은 줄 바꿈이 활성화 된 상태로 일반 텍스트 .txt로 저장하여 워드 문서를 가져 오는 것입니다. 나는 매크로가 이것을 할 수있는 쉬운 방법이 될 것이라고 말했고 나는 약간의 성공을 거두었 다. 내 가장 큰 문제는 현재 문서를 현재 파일 이름으로 저장하지 않는다는 것입니다. 나는 주변을 둘러 보았고 사람들은 ActiveDocument.Name을 사용한다고 말했지만 어떤 이유로 그것이 나를 위해 작동하지 않고 txt 파일로 저장되었지만 실제로 ActiveDocument.Name이라는 이름의 문서로 끝납니다. 이것은 VBA와 관련된 모든 것에 대한 나의 첫 번째 시도이기 때문에 아마도 볼 수없는 간단한 구문 오류 일 것입니다.Word 매크로 텍스트로 저장 현재 파일 이름으로

Sub WordtoTxtwLB() 
' 
' WordtoTxtwLB Macro 
' 
' 
    ActiveDocument.SaveAs2 FileName:= _ 
     "\\Path\Path\FILENAME.txt", FileFormat:= _ 
     wdFormatText, LockComments:=False, Password:="", AddToRecentFiles:=True, _ 
     WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _ 
     SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _ 
     False, Encoding:=1252, InsertLineBreaks:=True, AllowSubstitutions:=False, _ 
     LineEnding:=wdCRLF, CompatibilityMode:=0 
End Sub 

참고 : 여기에 내 현재 코드의 난 그냥 명확/일을 좀 더 쉽게하기 위해 일반적인 것 (즉, '경로'와 'FILENAME')에 내 코드의 경로와 파일 이름을 변경했다. 그래서 cat.doc라는 문서가 있다면, 매크로로 그것을 줄 바꿈과 같은 파일 이름으로 .txt 파일로 저장하길 원할 것입니다. 도움이나 제안이 있으십니까?

답변

2

이름 FILENAME은 따옴표 안에 들어 있으므로 리터럴로 사용됩니다. 따옴표에서 분리하여 변수로 사용하십시오. 또한 ActiveDocument.Name을 사용하면 접미어가 문자열 ("somefile.doc")의 일부로 사용됩니다. 접미사를 제거해야합니다.

Sub WordtoTxtwLB() 
    ' 
    ' WordtoTxtwLB Macro 
    ' 
    ' 
     Dim fileName As String 
     myFileName = "New_File" 

     ActiveDocument.SaveAs2 FileName:= _ 
      "\\Path\Path\" & myFileName & ".txt", FileFormat:= _ 
      wdFormatText, LockComments:=False, Password:="", AddToRecentFiles:=True, _ 
      WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _ 
      SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _ 
      False, Encoding:=1252, InsertLineBreaks:=True, AllowSubstitutions:=False, _ 
      LineEnding:=wdCRLF, CompatibilityMode:=0 
    End Sub 
+0

나는 그것이 그렇게 단순 할 것이라고 생각했습니다. 감사! 그리고 정말로 그것을 코딩 해 주셔서 감사합니다. – user1440061

관련 문제