You cannot see this page without javascript.

  1. 유틸리티new
  2. 컴퓨터Tip
  3. 드라이브
  4. 사진
  5. 즐겨찾는홈피

크롬 확장프로그램 FireS... 웹서핑을 하다보면 부득이하게 캡쳐를 받아야 할 때가 있습니...
크롬확장도구로 복사(드... 안녕하세요. 오늘은 크롬브라우저의 확장도구인 pig toolbox...
이미지 배경 자동으로 지... 사이트 접속화면 "Drag and Drog Image Here"에 배경을 지울 ...
USB & SD카드 복구 ... USB나 SD카드 같은 저장매체에 저장된 자료가 삭제되었을때 ...
PC에서 움직이는 움짤 제... PC화면을 움직이는 움짤 이미지 Gif 파일로 만들어 주는 프로...
포토샵 이미지따기, 머리... 포토샵 이미지따기, 일명 머리카락 누끼 따는법 알려드릴게요...
rss feed
조회 수 10589 추천 수 0 댓글 18
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

엑셀작업을 하다보면 VBA 메크로로 셀에 자동맞춤으로 이미지를 삽입되게 하면 이미지작업이 많을시 무척 편리하게 이용할 수 있습니다.

vba01.jpg


[VBA메크로 만드는 방법]

열려진 엑셀문서에서 Alt+F11(단축키)를 실행하면 VBA창이 열립니다.

삽입 - 모듈을 선택하면 아래 이미지와 같은 창이 열립니다.

vba02.jpg

[삽입코드 - 셀폭에 사진 자동으로 맞춤, 엑셀문서에 사진 포함되어지는 코드]

Sub insert_Pic()
    Dim Pic   As Variant
    Pic = Application.GetOpenFilename _
                    (filefilter:="Picture Files,*.jpg;*.bmp;*.tif;*.gif;*.png;*.jpeg")
    If Pic = False Then
        Exit Sub
    End If
    With ActiveSheet.Shapes.AddPicture(Pic, False, True, Selection.Left, Selection.Top, Selection.Width, Selection.Height)
        .LockAspectRatio = msoFalse
    End With
End Sub

위의 코드를 삽입하고 VBA창을 닫습니다.


[엑셀문서에 만들어진 메크로 적용하기]

1. 이미지가 삽입될 셀을 만듭니다.

2. 삽입 - 도형 에서 알맞은 도형을 선택해서 화면위에 넣습니다.

(도형이 아니어도 상관 없으며 위치도 어디던지 상관 없습니다)

3. 도형위에 우측마우스 - 메크로지정 선택

vba03.jpg


4. 메크로지정후 확인

vba04.jpg


5. 이미지를 삽입할 셀을 마우스로 선택후 메크로가 지정된 버턴을 클릭하면 파일탐색기가 나옵니다. 

이미지를 선택하여 넣으시면 됩니다.

vba05.jpg


6. 만들어진 엑셀파일을 메크로 파일이 작동되게끔 저장할려면 

다른이름으로 저장 - 파일형식을 "Excel 매크로 사용 통합 문서(*.xlsm)"으로 저장하시면 됩니다.


[주의 사항]

엑셀로 그림포함 작업시 그림삽입으로 문서를 작성한 경우 기본설정으로 저장시 그림이 문서안에 저장됩니다.

그런데 위의 설명에서 처럼 메크로 작업으로 이미지삽입된 엑셀파일을 만들경우 보통의 코드로 작업시 

이미지파일의 경로가 변경되거나 삭제,이름바꾸기 같은 작업이 이루어지면 엑셀문서안의 이미지파일은 엑박으로 뜹니다. 이런 경우 이미지없이 엑셀파일만 메일로 보내거나 USB(CD)에 담아 가면 이미지들이 출력이 되지를 앟습니다.

그래서 제가 드린 코드로 메크로파일을 작성하시면 경로와 상관없이 엑셀파일안에 이미지가 포함되어져 문서가 작성됩니다.

[일반적인 이미지 삽입 메크로코드]

Sub insert_Pic()

    Dim Pic   As Variant

    Pic = Application.GetOpenFilename _

                    (filefilter:="Picture Files,*.jpg;*.bmp;*.tif;*.gif;*.png")

    If Pic = False Then

        Exit Sub

    End If

     With ActiveSheet.Pictures.Insert(Pic).ShapeRange

        .LockAspectRatio = msoFalse

        .Height = Selection.Height

        .Width = Selection.Width

        .Left = Selection.Left

        .Top = Selection.Top

    End With

End Sub 

"Pictures.Insert" 는 링크로 참조하여 삽입할때 사용됩니다.

메일로 보내면 당연히 상대방 컴퓨터에서는 해당 파일을 찾지 못해서 안보이게 됩니다.

"Shapes.AddPicture" 를 사용 하시고 3번째 인수값이 true 일경우 사진과 함께 파일을 저장하는 인수값입니다.


p.s 이것은 저의 경험에서 나온 팁입니다.

그림을 문서에 포함시키지 않고 경로만 지정되게 해서 엑셀문서를 작성한경우 엑셀문서안에 이미지를 포함 저장하는 코드입니다.

Sub embed_Pics_Permanently()

   

    Dim shtNo As Integer                                     

    Dim i As Integer                                           

    Dim wks As Worksheet                                  

    Dim shpC As Shape                                      

    Dim picLeft As Single                                    

    Dim picTop As Single                                   

    

    Application.ScreenUpdating = False                

    

    shtNo = ActiveSheet.Index                             

    For i = 1 To Sheets.Count                              

        Sheets(i).Activate                                     

        

        For Each shpC In Sheets(i).Shapes           

            If shpC.Type = 11 Then                          

                

                picLeft = shpC.Left                            

                picTop = shpC.Top                           

                    

                shpC.Copy                                       

                ActiveSheet.PasteSpecial Link:=False 

                shpC.Delete                                     

                    

                Selection.Left = picLeft

                Selection.Top = picTop

            End If

        Next shpC

    Next i

   

    MsgBox "매크로가 종료되었습니다."

    

   Sheets(shtNo).Activate

End Sub

혹은 수정작업이 필요없거나 관람용으로만 사용할려면 "다름이름으로저장"에서 "PDF"로 저장해서 문서를 만들면 됩니다.


[설명]

Sub embed_Pics_Permanently()

   

    Dim shtNo As Integer                                     '현재 시트의 번호 넣을 변수

    Dim i As Integer                                            '전체 시트 개수 넣을 변수

    Dim wks As Worksheet                                  '각 시트를 넣을 변수

    Dim shpC As Shape                                      '각각의 도형(shape)을 넣을 변수

    Dim picLeft As Single                                    '각 그림(사진)의 왼쪽 위치 넣을 변수

    Dim picTop As Single                                    '각 그림의 윗쪽 위치 넣을 변수

    

    Application.ScreenUpdating = False                '화면 업데이트 (일시)정지

    

    shtNo = ActiveSheet.Index                             '활성화된 시트의 번호를 변수에 넣음

    For i = 1 To Sheets.Count                              '전체 시트를 순환

        Sheets(i).Activate                                     '시트를 순차적으로 활성화

        

        For Each shpC In Sheets(i).Shapes            '시트내의 각 도형을 순환

            If shpC.Type = 11 Then                          '만일 각 도형이 링크된 그림이라면

                

                picLeft = shpC.Left                            '링크된 그림의 왼쪽 위치를 변수에

                picTop = shpC.Top                           '링크된 그림의 윗쪽 위치를 변수에

                    

                shpC.Copy                                       '링크된 그림을 복사

                ActiveSheet.PasteSpecial Link:=False '그림 링크깨고 붙여넣기

                shpC.Delete                                     '링크된 그림을 삭제

                    

                Selection.Left = picLeft                      '복사된 그림 왼쪽 위치를 링크된 그림 왼쪽위치에

                Selection.Top = picTop                     '복사된 그림 윗쪽 위치를 링크된 그림 왼쪽위치에

            End If

        Next shpC

    Next i

   

    MsgBox "매크로가 종료되었습니다."

    

   Sheets(shtNo).Activate                                   '처음 매크로 실행된 시트를 활성화

End Sub

어떠셨나요? 0.00 (0명)
0
0
0
0
0
    Tip이 도움이 되었다면 댓글과 평가 부탁합니다. Tip에 대한 궁금한 점은 댓글로 남겨 주시면 성심껏 답변 드립니다.
?
  • ?
    루트 2016.11.21 12:56
    감사합니다.
    매우 유용합니다.
  • ?
    웃자 2017.05.10 17:07
    좋은 자료 정말 감사 합니다.
    질문이 하나 있습니다.
    "시트 보호"를 해버리면 런타임 오류가 발생 합니다.
    잡을수 있는 방법이 있는지요?
  • profile
    팔공산 2017.05.10 19:35

    웃자 님에게 달린 댓글

    어떤 부분을 "시트 보호" 하시는 지는 모르겠지만
    제가 전체영역 선택해서 "시트 보호" 해 보니 오류 없이 잘 작동합니다.
    엑셀 2016 입니다.
  • ?
    필수 2017.05.19 15:39
    저에게 꼬옥 필요한 글입니다! 정말 감사해요. 그런데 맥을 사용하고 있는데 여기서는
    '런타임 오류 '1004':
    메서드 'GetOpenFilename'('_Application' 개체 내) 실패
    라고 뜨거든요... 어떻게 하면 될까요?
  • ?
    필수 2017.05.19 18:18 Files첨부 (1)

    윈도우에서 하니까 잘됩니다!! 감사합니다 ㅎㅅㅎ 

    질문이 있습니다! 

    1. 이미지 칸에 버튼을 만들었는데 옆 셀에 이미지가 들어갑니다! 원래 그런건가요?

    2. 여기 넣었던 이미지를 다시 추출/저장 하고싶은데요, 칸에 비집고 들어간 왜곡된 이미지가 아닌 원본 그대로 저장할수 있는 방법은 없나요? 엑셀안에 이미지 저장하는 방식으로 '다른이름으로저장하게 - 웹페이지 형식'으로 하면  jpg형식들이 따로 나오는데요, 여기는 왜곡된 이미지만 나오더라구요! 엑셀안에서 이미지가 변형되면 그게 최종 이미지가 되는건가요? 

    엑셀을 잘 몰라서 하는 질문일수 있어서 조심스러우나 꼭 필요해서 여쭤봅니다!! 정말 감사합니다 

  • profile

    필수 님에게 달린 댓글

    1. 원래 그렇지 않습니다.^.^

    버턴을 누르기 전에 마우스커스를 이미지를 넣고 싶은 셀에 두세요.

    2. 정확하지는 않지만 아래 같이 해 보세요.(저도 해 보지는 않았습니다.)

    [수정전]
    .LockAspectRatio = msoFalse
    End With

    [수정후]
    .LockAspectRatio = msoTrue

    .ScaleHeight 1, msoTrue

    .ScaleWidth 1, msoTrue

    End With


    근데 이렇게 하면 지정한 셀에 맞추어 지지 않습니다.

    삽입 후 일일이 셀에 맞추어 주어야 합니다.


    아님 수정전 메크로로 이미지 넣어시고 이미지를 더블 클릭하시면 상단 메뉴에 

    "그림 압축"메뉴가 보이실 것입니다.

     해상도를 적당히 조정하세요.


    아님

    [다른 이름으로 저장] 메뉴 아래쪽 [도구 - 그림압축] 메뉴에서 호출할 수 있습니다. 


    [그림 압축] 메뉴에서 원하는 크기의 ppi를 선택하고 확인 버튼을 클릭하면 됩니다. 

    (여기서는 전자메일 항목을 선택했습니다.)

    엑셀 그림 이미지 압축 파일 용량 크기 줄이기

  • ?
    서기 2017.10.30 18:43

    팔공산 님에게 달린 댓글

    안녕하세요 궁금 점이 있어서 문의드립니다 엑셀 매크로 사진 삽입하면서 사진 다 깨져버려서 한 이백개의 파일 정도 되는데 그거 복구할 방법 없을까요ㅠㅠㅠㅠ
  • profile
    팔공산 2017.10.30 19:11

    서기 님에게 달린 댓글

    님의 정확한 의도는 잘 모르겠으나
    아마도 매크로로 짜 놓은 파일들의 이동으로 인해 이미지가 다 사라졌다는 말씀인지?

    이미지의 경로에 이미지가 없는 경우는 다시 살릴 수 있는 방법은 없을 듯 하고요,
    이미지가 살아 있는 환경에서 위의 본문에서 설명한
    "그림을 문서에 포함시키지 않고 경로만 지정되게 해서 엑셀문서를 작성한경우 엑셀문서안에 이미지를 포함 저장하는 코드" 이 부분으로 다시 매크로 실행하셔야 할 듯 합니다.
  • ?
    서기 2017.10.30 20:32

    답변 정말 갑사합니다.. ㅠㅠ 이거 해결안하면 몇일 밤을 세야할지도.. 파일이 몇백개라...


    엑알못이라 그냥 따라서 복사해서 붙여넣기로하고

    단축키 alt+w로 넣어서 사용했는데..


    읽어봐도 무슨말인지 ..


    이미 작성된 메크로 파일안에 사진을 포함시키고 싶은건데요..


    위 글처럼 alt+f11 누르고 기존 메크로 삭제후

    Sub embed_Pics_Permanently()

       

        Dim shtNo As Integer                                     

        Dim i As Integer                                           

        Dim wks As Worksheet                                  

        Dim shpC As Shape                                      

        Dim picLeft As Single                                    

        Dim picTop As Single                                   

        

        Application.ScreenUpdating = False                

        

        shtNo = ActiveSheet.Index                             

        For i = 1 To Sheets.Count                              

            Sheets(i).Activate                                     

            

            For Each shpC In Sheets(i).Shapes           

                If shpC.Type = 11 Then                          

                    

                    picLeft = shpC.Left                            

                    picTop = shpC.Top                           

                        

                    shpC.Copy                                       

                    ActiveSheet.PasteSpecial Link:=False 

                    shpC.Delete                                     

                        

                    Selection.Left = picLeft

                    Selection.Top = picTop

                End If

            Next shpC

        Next i

       

        MsgBox "매크로가 종료되었습니다."

        

       Sheets(shtNo).Activate

    End Sub

    를 붙여넣었는데 안되네요

    정말 진심을 담아 부탁드립니다. 해결방법이 없을까요??


  • profile
    팔공산 2017.10.31 00:40

    서기 님에게 달린 댓글

    먼저 Alt+F11 하신후 Module1에 위의 문구 작성하신 후 저장 - F5(실행) 키 누르면 

    "매크로가 종료되었습니다." 메세지 나오면서 끝.   

  • ?
    서기 2017.10.31 01:13

    팔공산 님에게 달린 댓글

    아..밤새작접중이였는데..해볼께요 정망 감사합니다ㅠㅠ
  • ?
    alca 2017.12.18 00:04
    정말 좋은 정보네요. 쉬운 설명 덕분에 어렵지 않게 응용할 수 있었습니다. 감사합니다!
  • ?
    나는 2017.12.28 11:30
    관리자님..메크로 코드좀 편리하게 응용할수있게...첨부파일좀 부탁드리겠습니다..
  • profile
    팔공산 2017.12.28 22:29

    나는 님에게 달린 댓글

    굳이 첨부파일이 필요하나요.
    코드복사해서 넣으시면 되는데요
    참고로 로그인하셔야 화면 복사가능합니다.

  • ?
    슬픈직원 2018.01.13 15:01
    관리자님 잘사용하고있는데 질문한가지 있습니다

    저희 현장 같은경우에는 선 2PT 로 조정하고
    엑셀칸에 꽉차게 만들어야하는데 좋은방법 소개좀 부탁드립니다
    답글이나 qodrnl10@gmail.com 이메일 답변 부탁드립니다
  • profile
    팔공산 2018.01.13 19:40

    슬픈직원 님에게 달린 댓글

    우선 제가 선 2PT가 무엇인지 잘 모르겠네요ㅠㅠ
    그리고 본문에 있는 메크로 삽입하면 엑셀칸에 꽉차지 않나요?
  • ?
    링거 2018.04.25 09:39
    코드를 어떻게 복사하죠?
  • profile
    팔공산 2018.04.25 12:45

    링거 님에게 달린 댓글

    회원가입하시면 우측마우스 작동합니다.

  1. 포토샵 이미지따기, 머리카락 세세한 부분 따기(일명 누끼따기)

    포토샵 이미지따기, 일명 머리카락 누끼 따는법 알려드릴게요. 보통 이미지 딸때 "펜툴"들을 많이 사용하시는데요, 오늘은 퀵셀렉션툴을 이용해 빠르게 따보겠습니당. 오늘의 이미지입니다. 머리까락 처리하기가 "펜툴"이나 "올가미도구"로는 거의 불가능에 가...
    Date2018.02.06 Category소프트웨어 By팔공산 Reply0 Views171 file
    Read More
  2. 한글문서 파일 합치기

    한글 파일 합치기는 자체 기능을 사용하면 쉽고 간단하게 해결할 수 있습니다. - 먼저 합치려는 첫번째 파일을 한글에서 열고 문서 끝에서 ENTER을 눌러 줄을 띄어주세요. - 상단 메뉴탭에서 "입력" 옆에 있는 작은 ▼ 버턴을 누른후 "문서 끼워 넣기"을 클릭해...
    Date2018.02.02 Category소프트웨어 By팔공산 Reply0 Views600 file
    Read More
  3. 엑셀 시트에 삽입된 그림 추출하기

    엑셀 시트에 삽입된 그림을 추출하는 방법은 여러가지가 있습니다. 1. 각 그림 파일을 복사(Ctrl + C) 후 다른 곳에 붙여넣기(Ctrl + V) 하는 방법. (이 방법을 사용하면 해상도가 많이 떨어지게 된다.)2. VBA(매크로)를 이용하여 시트에 삽입된 각 그림파일을...
    Date2017.05.19 CategoryExcel By팔공산 Reply0 Views695 file
    Read More
  4. 엑셀 VBA 개인용 매크로 통합문서 저장

    이전문서에 엑셀 VBA 매크로 코드를 만드는 방법을 작성했는데요 이번에는 자주 사용하는 매크로 코드를 어떠한 문서를 열던지 작동 되도록 하는 방법을 작성 해보도록 하겠습니다. 일단 매크로가 엑셀 메뉴에 안 보이실거에요. 파일 > 옵션 > 리본 사용자 지...
    Date2016.07.12 CategoryExcel By팔공산 Reply2 Views1880 file
    Read More
  5. 엑셀 메크로 그림(이미지)을 엑셀 파일에 직접 포함시키는 방법

    엑셀작업을 하다보면 VBA 메크로로 셀에 자동맞춤으로 이미지를 삽입되게 하면 이미지작업이 많을시 무척 편리하게 이용할 수 있습니다. [VBA메크로 만드는 방법] 열려진 엑셀문서에서 Alt+F11(단축키)를 실행하면 VBA창이 열립니다. 삽입 - 모듈을 선택하면 ...
    Date2016.07.11 CategoryExcel By팔공산 Reply18 Views10589 file
    Read More
  6. 모바일팩스 - 무료로 Fax 수신번호도 받고 송신도 가능하네요!

    SK텔링크는 2014.11.04.에 스마트폰에서 손쉽게 주고받을 수 있는 팩스를 출시했습니다.모바일 애플리케이션(앱) : [SK텔링크 모바일팩스]요금부과방식 : 팩스 한장당 스마트폰의 멀티미디어메시지(MMS) 가 2건씩 차감,별도의 추가 요금이 없음.전송방식 : 별...
    Date2015.01.07 Category스마트폰 By팔공산 Reply0 Views1322 file
    Read More
  7. Dropbox 클라우드 설치 및 사용방법

    이번에 큰공주가 갤러시노트2로 스마트폰을 바꾸고 나니 그안에 어플로 DropBox란 Cloud어플이 있기에 뭔가하고 알아보니썩 궨찮은 놈인 것 같아서 문하우스에 팁으로 남깁니다.그럼 Cloud 파일 동기화 솔루션인 DropBox 솔루션에 대해 알아보도록 하겠습니다....
    Date2012.12.24 Category스마트폰 By팔공산 Reply0 Views2162 file
    Read More
  8. 윈도우 업데이트 후 재시작 메시지 없애기

    윈도우 업데이트를 하고 나면 재부팅하라는 메세지가 뜨기도 합니다.이럴 때 굳이 재부팅을 해야 하는가?귀찮다면 아래와 같이 해보세요. 1. [시작] -> [실행] -> "CMD" 입력 후 엔터2. 서비스를 멈추고 싶을때 : net stop wuauserv3. 서비스를 시작하고 싶을 ...
    Date2012.01.21 Category기타 By팔공산 Reply0 Views2083 file
    Read More
  9. No Image

    파란의 '핸드폰 전화번호 가져오기' 서비스소개

    대형 포탈들의 모바일 지원이 갈수록 뜨겁다. 포탈의 입장에서 가장 선행되는 전략은 자사의 킬러 서비스를 모바일로 옮기는 일이다. 검색, 커뮤니티, SNS, 메일 등 다양한 서비스들이 모바일로 빠르게 이식되고 있다. 이런 기본적인 전략 못지 않게 중요한 것...
    Date2011.02.24 Category기타 By팔공산 Reply1 Views6483
    Read More
  10. 익스플로러8 웹사이트 복원오류 해결방법

    오류 증상은 특정웹페이지에 접속을 하면 " *** 페이지로 되돌아갈수 없었습니다." 라는 메세지와 함께 그페이지를 로딩하다가 닫혀버립니다. 이 증상은 익스플로러8을 설치후에 한글2007을 설치해서 그렇습니다. 한글2007 설치 과정에서 JScript.dll 파일을 ...
    Date2010.09.07 Category인터넷 By팔공산 Reply0 Views6290 file
    Read More
목록
Board Pagination Prev 1 2 3 4 5 ... 10 Next
/ 10
  • 문하우스는 IE11이상, Google Chrome, 1280*1024 이상의 모니터 해상도에서 최적화 되어 있습니다.무단 E-mail 추출이나, 무단,성인광고를 허용치 않습니다.
서버에 요청 중입니다. 잠시만 기다려 주십시오...