1. FAQ
  2. 엑셀(Excel)
  3. AfterEffects
  4. Premiere
  5. Photoshop
  6. ETC

이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.

사진넣기

조회 수 8306 추천 수 0 2009.07.29 15:34:29

안녕하세요 . 엑셀에대해서 잘모르고요 물어봐도 아는 사람이 없네요..

짐올린서식도 아는사람한테 부탁해서 만들었는데요

예를 들어 점명만 치면 숫자나 문자는 자동으로 들어가는데요

문제는 사진을 일일이 넣어야 하는데

점명만 치면 사진도 자동으로 넣는 방법이 있나요?

평택22를 치면 표석대장씨트엔 "평택22표지'란사진이 조사현황씨트엔 '평택22근경'  '평택22원경'이란사진이

자동으로 넣을수 있나요?(사진이름은 평택22표지 평택근경 평택22원경  이렇게 다른 폴더에 만들어져있다면요)

이게 가능할지는 모르겠구요

읽어 주심에 감사드림니다.

수고하세요.

 


댓글 '3'

profile

[레벨:30]아별

2009.07.31 02:31:08
*.130.73.19

첨부파일을 다운 받아, 압축을 푸시고 엑셀 파일을 여신다음..

"J5"셀의 값을 평택419, 평택422, 평택423 으로 바꿔서 선택해보세요.

엑셀 파일이 저장되어 있는 폴더 밑에 있는 images라는 폴더에 있는 해당 이미지를 가지고와서 셀 사이즈에 맞게 쏙 들어갑니다.

 

다운받기 : abyul_20090729_insertPicture.zip

 

솔직히..

이걸 해드릴까 말까 살짝 고민을 했지요.. ㅎㅎ

만드는 방법을 설명을 해드라자니 막막합니다. =_=;;

 

일단 보시지요...

 

기본적으로 엑셀의 기본 기능으로는 불가능합니다. VBA를 사용하실 수 밖에 없구요..

만약에 별도의 시트에 이미지가 모두 첨부되어 있다면.. 이름을 이용해서 동적 참조가 가능할 수도 있겠지만..

파일을 열어서 첨부하는 문제이니.. VBA로 할 수 밖에 없습니다.

 

코드에 주석을 열심히 달아놨습니다만.. 아래 코드를 이해하실 수 있을지는 잘 모르겠습니다.

생각보다 시간이 많이 걸렸구요.. 고생했습니다. 애썼다 한말씀해주세요.. ㅎㅎ

 

Option Explicit

Public pointNumber  As String


Sub insertPicture()

    '엑셀 파일이 있는 경로를 변수로 지정합니다.
    Dim basePath As String
    basePath = ActiveWorkbook.Path

    '작업할 시트들을 변수로 지정합니다.
    '그래야 나중에 시트 이름을 바꿔도 아래 2줄만 바꾸면 되게끔요..
    Dim S_ps As Worksheet
    Set S_ps = Worksheets("표석대장")
    Dim S_js As Worksheet
    Set S_js = Worksheets("조사현황")

    '삼각점번호의 값을 masterCode라는 변수에 집어 넣지요~
    Dim masterCode As String
    masterCode = S_ps.Range("J5").Value

    '사진 삽입에 필요한 변수 정의
    Dim R As Range
    Dim strFile As String

        '사진을 삽입하기 전에 기존 사진을 제거합니다.
        S_ps.Select
        If ActiveSheet.DrawingObjects.Count > 0 Then
            Call deleteObject
        End If

    '표석 대장 시트에 표지 사진 입력
    Set R = S_ps.Range("G20:AJ42")
    strFile = basePath & "\images\" & masterCode & "표지.JPG"
    Call resizePic(S_ps, R, strFile)

        '사진을 삽입하기 전에 기존 사진을 제거합니다.
        S_js.Select
        If ActiveSheet.DrawingObjects.Count > 0 Then
            Call deleteObject
        End If

    '조사현황 시트에 근경 사진 입력
    Set R = S_js.Range("A3:M3")
    strFile = basePath & "\images\" & masterCode & "근경.JPG"
    Call resizePic(S_js, R, strFile)

    '조사현황 시트에 원경 사진 입력
    Set R = S_js.Range("A5:M5")
    strFile = basePath & "\images\" & masterCode & "원경.JPG"
    Call resizePic(S_js, R, strFile)
   
    S_ps.Select
    S_ps.Range("J5").Select
   
    pointNumber = Worksheets("표석대장").Range("J5").Value

End Sub

'시트에 이미지 삽입 후에 셀 사이즈에 맞게 이미지 조정.
' resizePic( 삽입할 시트, 삽입할 셀 영역, 삽입할 파일 이름 )
Sub resizePic(S As Worksheet, R As Range, strFile As String)
    S.Select
    R.Select
   
    Dim fileName As String
    fileName = Dir(strFile)
   
    If Len(fileName) > 0 Then
        S.Pictures.Insert(strFile).Select
        With Selection
            .Top = R.Top
            .Left = R.Left
            .Height = R.Height
            .Width = R.Width
        End With
    Else
        MsgBox "화일이 없어요~", vbInformation, "이미지 삽입 에러창"
        S.Range("j5").Select
        End
    End If
End Sub


'사진을 삽입하기 전에 기존 사진을 제거합니다.
Sub deleteObject()
    ActiveSheet.DrawingObjects.Select
    Selection.Delete
End Sub

 

 

 

첨부

[레벨:4]우보천리

2009.07.31 10:15:33
*.46.130.152

이 고마움 어떻게 말씀드려야 될지 모르겠슴니다.

안돼는 구나 ... 포기 했었슴니다.

저 때문에 고생하신것 같아 죄송하구요..

주석까지 달아주셨는데  잘모르겠어요..

이기회에  함 공부좀 해야 겠슴니다.

정말 고맙슴니다 .. 꾸벅

저한테 기회가 돼면 만나 뵙고 싶네요..ㅎㅎ

혹 천안 오실기회가 되면 연락 함 주세요..

(강아지 사진두 이쁘구요.. ㅎㅎ)

 

 

 

profile

[레벨:30]아별

2009.08.02 01:33:20
*.130.73.19

엑셀은 정말 무궁무진한 프로그램입니다. ㅎㅎ

천안 갈일 있음 전화드릴께요.. 꼭 밥 한끼 사주세요.. ^-^;;

 

강아지는 제 쎈쓰죠~ ㅎㅎ

iWontYou.jpg

첨부
문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 59844
702 엑셀에서 sheet 보호를 한상태로는 셀병합이라던지 그런건 할수 없는건가요? [1] [레벨:2]코요태 2010-02-05 6394
701 이미지,도형 등 이미지 밀림 현상... [2] [레벨:2]dizzy 2013-03-10 6377
700 엑셀 매크로 작성입니다. file [1] [레벨:1]유니현 2009-12-07 6374
699 각 시트의 2개이상 조건값이 같을 때 해당값을 찾는 함수??? imagefile [1] [레벨:2]qpfmdpfm 2010-04-15 6365
698 차트안의 데이타 자동 변경방법 알려주세요^^ [3] [레벨:6]ryanoh 2010-03-30 6320
697 엑셀일반 다중셀 중복 항목 찾기 (시간표 같은 표에서) file [2] [레벨:4]thoi 2014-09-15 6317
696 VLookup Vlookup 사용 시 수식이 걸려 있는 데이터의 #N/A 표시 해결 [1] [레벨:3]읍내꽃미남 2011-10-07 6311
695 VBA 병합효과 file [3] [레벨:4]고수가되고파 2012-11-22 6310
694 작업 완료일 구하는 함수 중 일요일만 제외할 수 있나요? [2] [레벨:1]rusl1 2009-08-23 6310
693 자동으로 계산할 수 있는 방법이 있나요? file [2] [레벨:3]유령 2010-05-03 6309
692 ISERROR 건 입니다. [4] [레벨:2]리자딘 2009-08-11 6276
691 엑셀 차트(표식이 있는 꺾은선형)에서 특정 data 에 색깔 표시 [5] [레벨:1]Mike 2009-07-09 6260
690 다른시트에 조건부 수식 넣어서 합계 내는 법 file [2] [레벨:3]이구람 2010-01-11 6237
689 '근무일수를 소수점 월단위표기' 관련 질문 두번째 입니다~^^ [2] [레벨:1]리시안샤스 2009-07-22 6200
688 2007에서 그래프 사용시 [2] [레벨:1]푸른바다 2009-07-03 6183
687 VBA 특정색 행 삭제 메크로 배워보고 싶습니다~ imagefile [2] [레벨:1]굿한넘 2015-01-12 6175
686 excel vba 질문 드려요. file [1] 서수진 2010-02-24 6157
685 구간값에 있는 data 갯수 구하는 법 (countif) [3] [레벨:1]엑셀짱 2009-10-29 6155
684 엑셀일반 단축키가 안됩니다(찾기,Ctrl+F) ,Ctrl+G [3] [레벨:5]맑은이슬 2013-03-26 6147
683 엑셀일반 매번 불편한 부분이 있어서 질문드립니다. _ 여러 행 또는 열을 한번에 삽입하는 방법.. [4] [레벨:4]알랑알랑♥ 2011-11-29 6141