사진 자동삽입 매크로 관련 질문

VBA
작성자
K_Division
작성일
2022-08-26 16:10
조회
2840
엑셀버전 : 엑셀2019

운영체제 : 윈도우10

질문 요약 : 사진 삽입 매크로를 찾아서 사용하려는데 사진크기 조절을 어떻게 해야 할까요?

안녕하세요

인터넷에 공개된 매크로를 찾아서 사용 중 입니다.

 

상위폴더(사진)파일을 찾아 자동으로 사진을 넣는 매크로를 오늘 찾아서 쓰려고 하니 사진 삽입이 아닌 링크로 되어있어 삽입으로 수정하려 합니다.

Option Explicit
Sub ImportPhotos()
Dim Sh_Nam As Worksheet
Dim i As Integer, Col_FN As Integer, Col_Ph As Integer
Dim Pat_FN As String
Application.ScreenUpdating = False
Pat_FN = ThisWorkbook.Path & "\사진\"
Col_FN = 2 '파일이름이 위치한 열: A -> 1
Col_Ph = 2 '사진이 들어갈 열: B -> 2
Set Sh_Nam = Sheet1 '사진이 들어갈 엑셀시트 개체"
On Error Resume Next
For i = 2 To 4 '행지정
'With Sh_Nam.Pictures.Insert(Pat_FN & Cells(i, Col_FN).Value & ".jpg") '사진링크
' .Width = 100 '가로길이 변경
' .Height = 67 '세로길이 변경
' .Top = Sh_Nam.Cells(i, Col_Ph).Top + 2 '사진의 세로위치
' .Left = Sh_Nam.Cells(i, Col_Ph).Left + 5 '사진의 가로위치
With ActiveSheet.Shapes.AddPicture(Pat_FN & Cells(i, Col_FN).Value & ".jpg", msoFalse, msoTrue, ActiveSheet.Cells(i, Col_Ph).Left + 1, ActiveSheet.Cells(i, Col_Ph).Top + 1, 35, 35)
End With
Next i
Application.ScreenUpdating = True
End Sub

 

이렇게 수정했는데

문제는 사진크기를 중앙정렬도 아니고 강제로 35,35로 조절하게 되어있는거 같습니다.

이전에 쓰던 매크로는

With obj
.ShapeRange.LockAspectRatio = msoFalse
.Height = Selection.Height - 6
.Width = Selection.Width - 6
.Left = Selection.Left + 3
.Top = Selection.Top + 3
ActiveSheet.Protect DrawingObjects:=False, AllowFormattingCells:=True
End With

이렇게 하다보니 꽉차게 집어넣고 사면 여백을 주는 방식인데 이 명령어를 자동 사진삽입 매크로에 넣고 싶습니다.

어떻게 하면 될까요?

신고
스크랩
공유
전체 4

  • 2022-08-26 17:17

    @K_Division

    With ActiveSheet.Shapes.AddPicture(Pat_FN & Cells(i, Col_FN).Value & ".jpg", msoFalse, msoTrue, ActiveSheet.Cells(i, Col_Ph).Left + 3, ActiveSheet.Cells(i, Col_Ph).Top + 3, ActiveSheet.Cells(i, Col_Ph).Height - 6, ActiveSheet.Cells(i, Col_Ph).Width - 6)
    End With

     


  • 2022-08-26 17:19
    채택된 답변

    @K_Division

    With obj
    .ShapeRange.LockAspectRatio = msoFalse
    .Height = Selection.Height - 6
    .Width = Selection.Width - 6
    .Left = Selection.Left + 3
    .Top = Selection.Top + 3
    ActiveSheet.Protect DrawingObjects:=False, AllowFormattingCells:=True
    End With

    에서 Selection 을 사진이 들어갈 행,열 번호를 받아 Cells로 바꾸면 됩니다

    With obj
    .ShapeRange.LockAspectRatio = msoFalse
    .Height = Sheet1.Cells(2,2).Height - 6
    .Width = Sheet1.Cells(2,2).Width - 6
    .Left = Sheet1.Cells(2,2).Left + 3
    .Top = Sheet1.Cells(2,2).Top + 3
    ActiveSheet.Protect DrawingObjects:=False, AllowFormattingCells:=True
    End With

    이런형태가 될겁니다. 그리고 With 문 안에 넣는건 동일하고요


    • 2022-08-26 17:21

      홈페이지에 관련 매크로가 있네요

      https://www.oppadu.com/엑셀-이미지-삽입-함수/

      확인해보세요


  • 2022-08-26 18:30

    두분 답변 감사합니다.


전체 18,535
번호 카테고리 제목 작성자 작성일 추천 조회
알림
[📚진짜쓰는 실무엑셀] IT/오피스 '1위' 베스트셀러! 엑셀 공부, 이 교재로 마스터하세요! (315)
오빠두엑셀 | 2022.02.03 | 추천 575 | 조회 610193
오빠두엑셀 2022.02.03 575 610193
공지사항 문서서식
⭐ [더 나은 커뮤니티 문화를 위한 Q&A 글 작성 규칙] ⭐ (197)
오빠두엑셀 | 2021.10.28 | 추천 310 | 조회 35598
오빠두엑셀 2021.10.28 310 35598
78587 기능/도구
New 클립보드 오류 첨부파일
고녱 | 11:25 | 추천 0 | 조회 14
고녱 11:25 - 14
78586 함수/공식
New (초보 질문) 15분별-데이터를 1시간별-데이터로 SUMIFS 하는데, 일부 오류 발생 구간이 있습니다. 엑셀파일첨부파일 (2)
콩떡 | 09:48 | 추천 0 | 조회 25
콩떡 09:48 - 25
78584 구글시트
New 같은 값에 색으로 표시하기 첨부파일 (1)
피망이 | 09:24 | 추천 0 | 조회 34
피망이 09:24 - 34
78582 함수/공식
New 조건 함수 의 관한 문의 엑셀파일첨부파일 (6) 답변완료
예쁜나야 | 2025.05.13 | 추천 0 | 조회 79
예쁜나야 2025.05.13 - 79
78580
New 날짜와 시간 분할 방법 알려 주세요 엑셀파일첨부파일 (3) 답변완료
계양산 지기 | 2025.05.13 | 추천 0 | 조회 76
계양산 지기 2025.05.13 - 76
78575 VBA
New 엑셀 재고관리 프로그램 문의드립니다.. 첨부파일 (3)
SJ | 2025.05.13 | 추천 0 | 조회 104
SJ 2025.05.13 - 104
78570 대시보드
New 대시보드에 표 형식으로 표현도 가능한가요? 첨부파일 (2)
룰루랄라 | 2025.05.12 | 추천 0 | 조회 100
룰루랄라 2025.05.12 - 100
78569 함수/공식
New 서로 다른 양식의 견적서 엑셀 파일 한곳에 정리 하기 (5)
gh**** | 2025.05.12 | 추천 0 | 조회 119
gh**** 2025.05.12 - 119
78565 함수/공식
New 검색보고서 만들기 질문드립니다. 엑셀파일 (9) 답변완료
만식이햄 | 2025.05.12 | 추천 0 | 조회 97
만식이햄 2025.05.12 - 97
78563 VBA
New VBA 수정 부탁드립니다. ㅠ (8)
서비 | 2025.05.12 | 추천 0 | 조회 98
서비 2025.05.12 - 98
78560 함수/공식
New 어떻게 내용을 가져올수 있을지 고수님들의 해결방법들을 공유 받고 싶습니다!!.... 엑셀파일첨부파일 (2)
꾸르형 | 2025.05.12 | 추천 0 | 조회 56
꾸르형 2025.05.12 - 56
78559 파워쿼리/피벗
New 엑셀 자동화 질문 입니다... 엑셀파일 (2) 답변완료
안녕하세여11 | 2025.05.12 | 추천 0 | 조회 84
안녕하세여11 2025.05.12 - 84
78555 함수/공식
New 시트에서 원하는 열의 자료만 가져오고싶은데 아무리 해도 수식오류가 나서 도움을 구하고자 합니다 엑셀파일 (4) 답변완료
khs**** | 2025.05.12 | 추천 0 | 조회 52
khs**** 2025.05.12 - 52
78554 함수/공식
New 변동하는 절대참조값 적용 (6) 답변완료
화이또! | 2025.05.12 | 추천 0 | 조회 75
화이또! 2025.05.12 - 75
78553 대시보드
New 대시보드_슬라이서 자동으로 눌러지게 하는방법 첨부파일 (1)
검도림 | 2025.05.12 | 추천 0 | 조회 59
검도림 2025.05.12 - 59
78548 대시보드
New 어떤 엑셀을 적용해야하는 지 문의드립니다! (1)
룰루랄라 | 2025.05.11 | 추천 0 | 조회 77
룰루랄라 2025.05.11 - 77
78546 함수/공식
New 월별 매출액 자동입력할 수 있는 방법 또는 함수 궁금합니다! 엑셀파일 (2)
mmm1010 | 2025.05.11 | 추천 0 | 조회 101
mmm1010 2025.05.11 - 101
78544 함수/공식
New 중복값 제거 함수에 관하여 엑셀파일첨부파일 (1) 답변완료
김지훈(Derek) | 2025.05.11 | 추천 0 | 조회 86
김지훈(Derek) 2025.05.11 - 86
78543 함수/공식
New 데이터 추출 및 정렬관련 초보질문 엑셀파일첨부파일 (5) 답변완료
김지훈(Derek) | 2025.05.11 | 추천 0 | 조회 83
김지훈(Derek) 2025.05.11 - 83
78540 함수/공식
New 오빠두LIVE 219회 - 엑셀 '셀 병합' 자동화 보고서 만들기 오빠두엑셀님의 방법이 궁금합니다. 첨부파일
AURIC | 2025.05.10 | 추천 0 | 조회 69
AURIC 2025.05.10 - 69
78536 함수/공식
New 월별로 금액적용후 최종월에 차액을 가감 함수가 필요해요 엑셀파일 (1) 답변완료
낮은자 | 2025.05.10 | 추천 0 | 조회 73
낮은자 2025.05.10 - 73
78535 기능/도구
New 엑셀로 25x25 인쇄가 가능한가요? (1)
망나 | 2025.05.10 | 추천 0 | 조회 57
망나 2025.05.10 - 57
78534 파워쿼리/피벗
New 쿼리에 함수 적용한 열 추가 시 24:00:00 활용한 계산 함수 필요할 때. 첨부파일 (2) 답변완료
신노스케 | 2025.05.10 | 추천 0 | 조회 74
신노스케 2025.05.10 - 74
78531 차트/그래프
New 엑셀 차트 데이터테이블 엑셀파일첨부파일 (1)
| 2025.05.09 | 추천 0 | 조회 84
2025.05.09 - 84
78530 구글시트
New 구글 스프레드시트 함수 관련 질문입니다. 엑셀파일첨부파일 (2)
동그이 | 2025.05.09 | 추천 0 | 조회 73
동그이 2025.05.09 - 73
78528 구글시트
New 구글 스프레드시트를 외부 엑셀 파일과 연동하는 방법이 궁금합니다. (3)
머우터덩 | 2025.05.09 | 추천 0 | 조회 77
머우터덩 2025.05.09 - 77
78525 문서서식
New 업무가 진행이 안 될 정도로, 해당 파일이 느립니다! 엑셀파일 (2)
빌스택스 | 2025.05.09 | 추천 0 | 조회 103
빌스택스 2025.05.09 - 103
78520 기능/도구
New 하이퍼링크 명칭 해제 (1)
min | 2025.05.09 | 추천 0 | 조회 61
min 2025.05.09 - 61
78518 피벗테이블
New 피벗테이블 관련 화살표 질문 첨부파일
이모비니 | 2025.05.09 | 추천 0 | 조회 57
이모비니 2025.05.09 - 57
78516 함수/공식
New 호봉산정 엑셀 문의드립니다. 엑셀파일첨부파일 (2) 답변완료
아르카디안 | 2025.05.08 | 추천 0 | 조회 68
아르카디안 2025.05.08 - 68