Windows XP에서 실행되는 Word 2003에서 작동하는 매크로가 있는데, 매크로는 normal.dot 템플릿에 있습니다. 관련 부분 아래에 있습니다. 병합 된 .rtf에서 실행되고 현재 문서를 복사하고, 새 문서를 열고, 사용자 정의 콤보의 일부 데이터와 함께 복사 된 내용을 붙여 넣고, 사용자 정의 명명 된 파일에 저장하고, 닫은 후 사용자를 다시 남겨 둡니다. 시작되었습니다. 그런 다음 저장된 문서를 FTP로 전송합니다. 그것은 예상대로 작동합니다.Word VBA, Word 2007 Win XP에서는 작동하지만 Word 2007에서는 작동하지 않는 이유는 무엇입니까?
ActiveDocument.Content.Copy
Documents.Add
ActiveDocument.Content.Paste
'Add the data from the Userform
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.ClearFormatting
.Text = "\<refDestination\>*\<End Synapse data\>"
.Replacement.ClearFormatting
.Forward = True
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = True
.Replacement.Text = "<refDestination>" & ComboBox1 & "</refDestination>" & _
"<refType>" & ComboBox2 & "</refType>" & _
"<End Synapse data>"
.Execute Replace:=wdReplaceAll, _
Wrap:=wdFindContinue
End With
ActiveDocument.SaveAs savedName, wdFormatDocument
ActiveDocument.Close ' Now go on to FTP savedName
MsgBox "wait here"
내가 승 7 및 Word 2007에 다른 사이트에서 같은 매크로를 실행하려고하고 이미 열려있는 내가 파일을 해제하지 않습니다 어떤 방식으로 activedocument.close에, savedName을 삭제할 수 없습니다 실패 , 프로세스가 중단됩니다. 작업 관리자를 사용하여 단어를 닫으려고하면 savedName에있는 파일로 이동하여 파일을 열면 올바른 데이터가 포함되어 닫히는 것처럼 보입니다.
왜 작동하는 코드가 표시되지만 프로세스가 멈추는 부분 (ftp 부분)은 아닌가? –
FTP 부분이 문제가 아니기 때문에. 내가 MsgBox를 마지막에 넣으면 savedName 파일을 삭제하려고 시도하면 파일이 잠긴 오류가 발생합니다. – Saul
Windows 7에서 나는 그러한 효과를 보았습니다. 하지만 범인은 Word (또는 필자의 경우 Excel)가 아니었지만 파일 탐색기는 창의 오른쪽에 파일 미리보기가있었습니다. 파일이 거기에 표시됩니까? – Codo