나는 VBA 초보자이지만 Excel 2010 차트를 새로운 Word 2010 문서로 내보낼 수있는 코드를 함께 제공합니다. . 내가 가진 유일한 문제는 Excel이 업데이트되면 차트를 Excel에서 연결 해제하여 Excel이 업데이트 될 때 차트가 변경되지 않도록하려는 것입니다. 나는 사방을 보았지만 아무것도 작동하지 않는 것 같습니다.GIF로 링크하거나 저장하지 않고 엑셀 차트를 복사하여 붙여 넣기
청구서에 맞는 다른 코드 만 차트를 가져 와서 붙여 넣기 전에 이미지로 저장하지만 이미지가 저장되지 않아도 작동하지 않습니다. 조직의 사용자는 액세스 권한이 없습니다. C : \ 드라이브에 저장하고 모든 사용자의 세부 정보를 알지 못하면 작업을 수행 할 코드를 작성할 수 없습니다.
지금까지 작성한 코드는 작업을 수행하는이 있지만 해제하지 않습니다
Sub Copy_Paste_Report_1_Graph_to_new_word_document()
'
'Copy/Paste An Excel Chart Into a New Word Document
'(VBE > Tools > References > Microsoft Word 12.0 Object Library)
'Excel Objects
Dim ChartObj As ChartObject
'Word Objects
Dim WordApp As Word.Application
Dim myDoc As Word.Document
Dim WordTable As Word.Table
'Optimize Code
Application.ScreenUpdating = False
Application.EnableEvents = False
'Copy Chart from Excel
Set ChartObj = Worksheets("External Dashboard").ChartObjects("Chart 1")
'Create an Instance of MS Word
On Error Resume Next
'Is MS Word already opened?
Set WordApp = GetObject(class:="Word.Application")
'Clear the error between errors
Err.Clear
'If MS Word is not already open then open MS Word
If WordApp Is Nothing Then Set WordApp = CreateObject(class:="Word.Application")
'Handle if the Word Application is not found
If Err.Number = 429 Then
MsgBox "Microsoft Word could not be found, aborting."
GoTo EndRoutine
End If
On Error GoTo 0
'Make MS Word Visible and Active
WordApp.Visible = True
WordApp.Activate
'Create a New Document
Set myDoc = WordApp.Documents.Add
'Copy Excel Chart
ChartObj.Copy
'Paste Chart into MS Word
myDoc.Paragraphs(1).Range.PasteSpecial Link:=False _
EndRoutine:
'Optimize Code
Application.ScreenUpdating = True
Application.EnableEvents = True
'Clear The Clipboard
Application.CutCopyMode = False
End Sub
나는 아마 내가 필요 이상을 포함했지만, 내가 말했듯이, 난 초보자.
가 왜'ChartObj.CopyPicture xlScreen, xlPicture'와'myDoc.Paragraphs (1) .Range.PasteSpecial'를 시도? – omegastripes
완벽한 !! 고맙습니다! 잘 했어. –
답변을 답글로 게시했습니다. 도움이 될 경우 클릭하여 동의하십시오. – omegastripes