Word 문서에서 매크로를 사용하여 Excel 통합 문서의 데이터를 해당 MS Word 문서에 입력했습니다.런타임 오류 1004 '워크 시트'개체 _Global
루틴은 데이터가 저장된 Excel 통합 문서를 찾은 다음 통합 문서의 필드를 복사하고 단어 문서 텍스트의 항목을 찾은 다음 문서 텍스트 단어로 바꿉니다.
다음 코드가 작동했지만 가끔 런타임 오류가 발생합니다. 이제 모든 실행에 다음과 같은 오류가 발생합니다.
.Replacement.Text = 워크 시트 ("1 조직 서비스 :
런타임 오류 '1004'방법 '워크 시트'object'_Global의 '
그것은이 라인으로 트리거입니다 실패 영역 "). 범위 ("B3 "). 값 '조직 이름 삽입
코드가 훨씬 길지만 여기에 아이디어가 있습니다. 오류는 아래에 표시된 첫 번째 하위에서 트리거됩니다.
Sub InputContractData()
'
' You must pick Microsoft Excel Object Library from Tools>References
' in the Visual Basic editor to execute Excel commands.
' InputContractData Macro
'
'
'Define Excel and Workbook Information
Dim objExcelApp As Excel.Application
Dim objCDCDataWorkbook As Workbook
Dim CDCDataFile
Dim CDCDataFilePath
Dim CDCDataFileName
'Define Word and Document Information
Dim objWordApp As Word.Application
Dim objWordDoc As Word.Document
'Open Excel Program
Set objExcelApp = New Excel.Application
Set objWordApp = Word.Application
Set objWordDoc = objWordApp.ActiveDocument
objExcelApp.Visible = True
objWordApp.Visible = True
CDCDataFile = objExcelApp.GetOpenFilename("Excel Files (*.xlsx), *xlsx")
Set objCDCDataWorkbook = objExcelApp.Workbooks.Open(CDCDataFile)
CDCDataFilePath = Left(CDCDataFile, InStrRev(CDCDataFile, "\"))
CDCDataFileName = Dir(CDCDataFile)
Call Sheet001
'Save Document in same folder as CDC Workbook
objWordDoc.SaveAs CDCDataFilePath & "\DraftContract.docx"
' Close the new Word document.
objWordApp.ActiveDocument.Close
' Close the Word application.
objWordApp.Quit
End Sub
Sub Sheet001()
'Sheet 1- Organization Service Area -----------------------------
With Selection.Find
.ClearFormatting
.Text = "[[ORGANIZATION]]"
.Replacement.ClearFormatting
.Replacement.Text = Worksheets("1- Organization Service Area").Range("B3").Value 'Insert Organization Name
.Execute Replace:=wdReplaceAll, Forward:=True, _
Wrap:=wdFindContinue
End With
End Sub
어느 라인 (들) 수행이 오류를 던지는시 디버거 하이라이트? –
.Replacement.Text = 워크 시트 ("1- 조직 서비스 영역") 범위 ("B3"). 값 '조직 이름 삽입 –
질문에 필수 정보를 포함해야합니다. 의견은 언제든지 사라질 책임이 있다고 간주되어야합니다. –