0
IncludePicture
필드를 통해 추가 된 이미지에 하이퍼 링크를 추가하려고합니다. 그것에링크 된 이미지에 하이퍼 링크 추가
{ IncludePicture "C:\\Test\\Image 1.png" \d }
그리고, 그것은 추가해야 하이퍼 링크 :
예를 들어, 이것은 이미지입니다 그 후
C:\\Test\\Image 1.png
, 나는 마우스로 문서 내 이미지를 클릭 할 수 있습니다 , 파일 관리자에서 열립니다.
다음은 코드입니다. 어떤 이유로 든 제대로 작동하지 않습니다. 어떻게 수정해야합니까?
Sub AddHyperlinksToImages()
On Error Resume Next
Application.ScreenUpdating = False
Dim iShp As InlineShape
For Each iShp In ActiveDocument.InlineShapes
iShp.Hyperlink.Address = iShp.LinkFormat.SourceFullName 'Doesn't work
'Just for testing
'fullPath = iShp.LinkFormat.SourceFullName
'MsgBox fullPath
Next
Application.ScreenUpdating = True
End Sub
감사합니다. 부분적으로 작동합니다. 현재 나는 그것을 다소 수정하려고 노력하고있다. 몇 가지 문제가 있습니다. 1) 문서를 열고 매크로를 시작하면 오류가 발생합니다. 이 오류를 방지하려면 이미지를 업데이트해야합니다. 즉, 먼저 문서를 열고 Ctrl-A를 누른 다음 F9를 누른 다음 매크로를 실행하십시오. 이렇게하면 스크립트가 오류없이 실행됩니다. 2) 하이퍼 링크는 약간 깨졌습니다. 2.1) 경로에 공백이 있으면 일부 글자가 잘 리기 때문입니다. 2.2) 어떤 이유로 경로의 \\이 \\\\가됩니다. [여기에 이미지가 있습니다.] (https://i.imgur.com/aLVllJy.png). – james
필자가 알고 있듯이, 공백 문제는'FilePath = Split (Trim (Replace .Code, ","% 20 "))) (1)'을 사용하여 수정할 수 있습니다. 그러나 그것은 효과가 없습니다. 'FilePath = Split (Trim (Replace, .Code, "img", "img % 20")) (1)'과 같은 것이 잘 동작하기 때문에 좀 이상합니다. – james
하나. 코드를 추가하여 필드를 업데이트 할 수 있습니다. 나는 이것이'ActiveDocument.Fields.Update'와 같은 것으로서 절차의 시작 부분에 추가 될 것이라고 생각합니다. – Variatus