Excel의 배경 이미지와 일치하도록 설명 상자 크기를 자동으로 재정의합니다.

Excel의 배경 이미지와 일치하도록 설명 상자 크기를 자동으로 재정의합니다.

Excel에서 주석 배경으로 test.jpeg와 같은 이미지를 선택했다고 가정해 보겠습니다. 나는 주석 상자가 test.jpeg의 크기를 갖기를 원합니다. 수백 개의 댓글을 달 계획이므로 내 질문은 다음과 같습니다. 이를 자동화할 수 있는 방법이 있습니까?

답변1

나는 VBA 매크로를 함께 만들었습니다. ALT+를 사용하여 VBA 편집기를 열고 F11아래 코드를 붙여넣습니다.시트1. ALT+ 로 매크로 실행F8

매크로의 기능

  1. 사용자에게 삽입하려는 사진의 경로를 묻습니다(jpg, bmp 또는 png일 수 있음).

  2. 해당 사진을WIA.imageFile. 나중에 우리는 실제 그림 크기를 얻기 위해 objImage.Height및 를 사용합니다.objImage.Width

    이 방법은 픽셀 단위로 크기를 계산하는 가장 짧은 방법이었습니다(다른 VBA 방법에서는트윕. 정말 끔찍한 발명품이에요)

  3. 이전 메모가 이미 존재하지 않는 경우 현재 선택한 셀에 빈 메모를 삽입합니다.

  4. 선택한 그림을 주석 모양의 배경 이미지로 설정

  5. 그림이 완벽하게 맞도록 주석 모양 크기를 조정하세요.

Sub InsertComment()

    Dim strImagePath As Variant
    Dim objImage As Object
        
    strImagePath = Application.GetOpenFilename("Picture, *.jpg; *.png; *.bmp")
    If strImagePath = False Then Exit Sub
                
    Set objImage = CreateObject("WIA.ImageFile")
    objImage.LoadFile strImagePath
    
    With ActiveCell
        If .Comment Is Nothing Then .AddComment ("")
        .Comment.Shape.Fill.UserPicture strImagePath
        .Comment.Shape.Height = objImage.Height * 0.75
        .Comment.Shape.Width = objImage.Width * 0.75
    End With

End Sub

관련 정보