<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>konahn　　　　　　　A PowerPoint VBA Adventurer</title>
    <link>https://konahn.tistory.com/</link>
    <description>A PowerPoint VBA Adventurer</description>
    <language>ko</language>
    <pubDate>Wed, 13 May 2026 09:16:40 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>쵸코난</managingEditor>
    <image>
      <title>konahn　　　　　　　A PowerPoint VBA Adventurer</title>
      <url>https://tistory1.daumcdn.net/tistory/1809765/attach/3a6d8cea4fa24059896ed77c11e091f7</url>
      <link>https://konahn.tistory.com</link>
    </image>
    <item>
      <title>[Bomb Game] 상시 점수판 + Bomb 퀴즈 만들기 - PPT 스킬 퀴즈</title>
      <link>https://konahn.tistory.com/entry/BombGamePPT</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;pptskill.png&quot; data-origin-width=&quot;2147&quot; data-origin-height=&quot;1448&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bCk4rX/dJMcadPsmMV/ypsOAkJBGt6AqnZK1VYapK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bCk4rX/dJMcadPsmMV/ypsOAkJBGt6AqnZK1VYapK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bCk4rX/dJMcadPsmMV/ypsOAkJBGt6AqnZK1VYapK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbCk4rX%2FdJMcadPsmMV%2FypsOAkJBGt6AqnZK1VYapK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;431&quot; height=&quot;291&quot; data-filename=&quot;pptskill.png&quot; data-origin-width=&quot;2147&quot; data-origin-height=&quot;1448&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✅ &lt;b&gt;이번 버전의 특징&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 Bomb Game 은 점수판을 문제를 풀고 나서만 확인할 수 있었는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 버전은 팀별 점수판이 번호 선택할 때나 문제를 풀 때나 항상 오른쪽에 뜨도록 만든 버전입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;점수판은 슬라이드 마스터 레이아웃에 들어 있기 때문에 슬라이드에 점수판 레이아웃만 적용하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_010.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1050&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DGNV1/dJMcaaSNthP/CQPbehGxnZqGqzw093zC70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DGNV1/dJMcaaSNthP/CQPbehGxnZqGqzw093zC70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DGNV1/dJMcaaSNthP/CQPbehGxnZqGqzw093zC70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDGNV1%2FdJMcaaSNthP%2FCQPbehGxnZqGqzw093zC70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1050&quot; data-filename=&quot;Img_010.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1050&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번에는 샘플로 PPT 기능에 대한 내용을&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 풀고 돌아오면 번호가 사라지는 &lt;span style=&quot;color: #333333; text-align: left;&quot;&gt;&lt;b&gt;점수판 Bomb Game&lt;/b&gt;&lt;/span&gt; 형식으로 생성했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-13396bd8-a629-424e-9239-c807e1193282&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-f8161073-c51d-490a-ab80-e540da0774f3&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt; 자주 받는 질문인데 하이퍼링크 걸린 번호 도형이 나중에 사라지는 것은 &lt;/span&gt;&lt;span&gt;&lt;a style=&quot;color: #608cba;&quot; href=&quot;https://kin.naver.com/qna/detail.naver?d1id=1&amp;amp;dirId=102020103&amp;amp;docId=482913225#answer1&quot; data-linkdata=&quot;{&amp;quot;id&amp;quot;: &amp;quot;SE-c9b851d9-ed94-4c18-89f4-7d0c0257effd&amp;quot;, &amp;quot;link&amp;quot;: &amp;quot;https://kin.naver.com/qna/detail.naver?d1id=1&amp;amp;#38;dirId=102020103&amp;amp;#38;docId=482913225#answer1&amp;quot;}&quot; data-linktype=&quot;text&quot;&gt;Bomb Game 제작 방법&lt;/a&gt;&lt;/span&gt;&lt;span&gt; 링크를 참고하세요.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-3b760970-4ae3-4f34-a9db-d1dcc58c3d50&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;✅ &lt;b&gt;Bomb Game 숫자&lt;/b&gt; &lt;b&gt;버튼 생성 자동화&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-bb32153c-17c7-4dc0-97bc-67840dc810c7&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Bomb Game 만들 때 숫자 버튼이 20개이상 많다면 일일이 하이퍼링크와 트리거 애니메이션을 각각 적용하는 것이 무척 번거롭습니다.&amp;nbsp;&lt;/span&gt;&lt;span&gt;이 작업은 매크로로 자동화할 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-e2852ef3-80d7-4dcc-9ac7-cd0972537d1f&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-f37f92da-6b0d-4e29-944c-fb762efb244e&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;pptm 첨부파일에서 3슬라이드를 선택하고 기존 버튼을 지우고 Alt+F8을 누르면 뜨는 매크로 목록에서&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-522baeb8-ae72-4ce1-a6eb-443dd32f6639&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;C_BombChoice를 누르면 자동으로 숫자 버튼을 생성하고 하이퍼링크와 트리거 애니메이션을 적용해줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-c51f0911-7431-4037-a718-67d59601c8f2&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;226&quot; data-origin-height=&quot;216&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bk5ubp/dJMcaarI0NN/r9RqBSTblTYADvNPZaXcyk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bk5ubp/dJMcaarI0NN/r9RqBSTblTYADvNPZaXcyk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bk5ubp/dJMcaarI0NN/r9RqBSTblTYADvNPZaXcyk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbk5ubp%2FdJMcaarI0NN%2Fr9RqBSTblTYADvNPZaXcyk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;226&quot; height=&quot;216&quot; data-origin-width=&quot;226&quot; data-origin-height=&quot;216&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-5d61d722-336b-408e-8c57-e44c5bb2823e&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-5ef79661-a065-4370-99f3-8779d77c2286&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-499637cf-bc1d-4645-b846-3599fba533c1&quot; style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;◆◆◆ ◆◆◆ ◆◆◆&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-5810e2ee-3148-4f25-ac79-1c28f64c9a47&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;✅ &lt;b&gt;Bomb Game 모든 작업 원클릭 자동화&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-a10e42a0-cf38-43f1-9863-93d1bf7d6103&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;궁극적으로는 가장 위에 있는 &lt;b&gt;A_Main&lt;/b&gt; 을 누르면 Bomb Game 제작 전체 과정을 완전 자동화 처리합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-12895197-7e0b-4bc2-b500-0844f8448b4a&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-d464acfd-5756-4478-a883-a1da10e498d4&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;A_Main 매크로는 일련의 작업을 한꺼번에 처리해줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;엑셀파일에 정리한 문제 목록으로부터 4번 슬라이드 템플릿 슬라이드를 바탕으로 그 틀 그대로 자동으로 모든 문제 슬라이드를 생성하고 문제 선택 슬라이드에 Bomb Game 숫자 버튼을 원하는 개수와 배열로 만들고 문제 슬라이드로 하이퍼링크와 사라지기 트리거 애니메이션을 자동으로 지정해줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-0bc605b8-f8ee-4493-b480-73ab03106cc5&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-7a39413d-ff55-4aa3-a10a-d2376c086731&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;또한 추후에라도 엑셀목록으로부터 문제 슬라이드를 자동으로 생성(B_LoadXL)하고&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-e6f5115d-161f-4488-90cc-2bb1108054c9&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;숫자버튼의 색상을 랜덤으로 수정(D_Buttons_Color/ G_ColorForSimilarButtons)하고&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-e3c94631-9d16-4ba8-85db-ee898e13ff70&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;문제슬라이드 순서를 섞기도(E_QSlideShuffle_Range) 합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-109c63e1-9ef6-4fdf-a791-4edd6d091e0d&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그리고 마지막 슬라이드에 매크로가 필요 없는 점수판을 만들어주기도(F_TeamScore) 합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-18f8647f-d2d9-4d74-a56c-728c744ea05e&quot; style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이번에는 위에 설명한 대로 마지막에만 점수를 보여주지 않고 슬라이드 마스터 레이아웃을 이용해 항상 옆에 점수판이 뜨게 했습니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✅&lt;b&gt; AI를 이용한 문제 자동 생성&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-bb2943f1-f5bb-4c4a-a793-e8d92040023f&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;문제슬라이드 생성은 몇번 소개한대로 아래 프롬프트처럼 AI에게 문제를 CSV파일 형식으로 생성해달라고 해서 &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-5e876c58-e46e-473a-bf29-b49bdd0610c3&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그 결과를 엑셀에 붙여넣으면 빠르게 문제 생성이 가능합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1778426998845&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;'파워포인트 숨은 기능 사용법'에 대한 집중 훈련 세트를 만들려고 해. 아래 조건에 맞춰서 모르기 쉬운 기능에 대한 질문 30개를 생성해줘.
핵심 영역: 슬라이드 생성/복제, 도형/텍스트상자 속성, 문단속성, 슬라이드마스터, 전환효과, 클릭 애니메이션, 트리거 애니메이션, 하이퍼링크, 슬라이드쇼 설정, 글꼴포함, 도형병합, 동영상 삽입  
구성 비율: 핵심영역 중에서 균형을 맞춰 출제해줘.
난이도: 초보 파워포인트 사용자가 가장 모르고 실수하는 기능을 반영해줘.
출력 형식: 반드시 아래의 CSV 코드 블록 형식으로 출력해줘. (쉼표로 구분할 때 문장 내 쉼표와 충돌하지 않도록 큰따옴표 &quot;&quot;&quot;&quot;를 사용해줘.)
헤더: No,구분,문제,정답,설명
예시 줄:
1,슬라이드쇼,&quot;&quot;슬라이드쇼에서 애니메이션 없이 슬라이드만 보게 하려면?&quot;&quot;,&quot;&quot;슬라이드쇼 설정 &amp;gt; 애니메이션 효과 없음에 체크하고 쇼를 시작한다.&quot;&quot;, 슬라이드쇼 설정 대화상자를 확인하세요.
2,글꼴,다른컴퓨터에서 글꼴을 유지하려면?,파일 &amp;gt; 옵션 &amp;gt; 고급 &amp;gt;저장에서 글꼴포함에 체크하고 저장, 편집이 필요 없으면 &amp;gt; 사용한 글꼴만 포함, 편집이 필요하면 &amp;gt; 모든 글꼴 포함&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;결과 텍스트를 엑셀에 붙여넣고 데이터 &amp;gt; 텍스트나누기 &amp;gt; 쉼표로 분할&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_007.png&quot; data-origin-width=&quot;1287&quot; data-origin-height=&quot;565&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dPuCFs/dJMcacbZlGx/tIZiheEd42KXSe6N92QgM1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dPuCFs/dJMcacbZlGx/tIZiheEd42KXSe6N92QgM1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dPuCFs/dJMcacbZlGx/tIZiheEd42KXSe6N92QgM1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdPuCFs%2FdJMcacbZlGx%2FtIZiheEd42KXSe6N92QgM1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1287&quot; height=&quot;565&quot; data-filename=&quot;Img_007.png&quot; data-origin-width=&quot;1287&quot; data-origin-height=&quot;565&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;◆◆◆ ◆◆◆ ◆◆◆&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✅&lt;b&gt;&lt;span&gt; 슬라이드 마스터를 이용한 &lt;/span&gt;상시 점수판&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;원래 점수판이 맨 뒤에 들어가는데&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이번에는 점수가 오른쪽에 항상 뜨도록 슬라이드 마스터 레이아웃을 이용했습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-89a3b7c1-965e-4c48-b2a5-93efab2d0132&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;오른쪽에 10개 팀의 점수가 나오려면 살짝 수정이 필요합니다. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;예전 코드에서 MaxT를 10으로 수정해야 하는데 이번에는 원하는 팀 개수와 세로 행수를 선택할 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-b5991977-b392-4b2c-b917-76ca6b430a78&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;첨부파일에는 6개 팀으로 만들어 보았으니 참고하세요.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-9aab5192-0c1a-4e9a-b402-2e14e43804ab&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;팀 점수판이 있는 슬라이드를 다른 ppt에 붙여넣기하고 Module 4 매크로 코드를 복사해도 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-50dcbb70-2b04-44fd-99de-9d2355b73ad6&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-3e98af67-a95a-4924-808c-dea8b2849e6a&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;팀 개수를 원하는 개수로 변경하려면 pptm 파일 다운로드하고 &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-25d8e124-a8ec-4c00-8afe-70e4d49f5642&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;3슬라이드 이후의 아무 슬라이드에서 보기 &amp;gt; 슬라이드 마스터로 이동합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Score_A 그룹도형이 있는 레이아웃을 선택하고 나머지 Score_x 도형은 삭제한 상태에서 &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-a39c9170-c8c8-4d62-a936-1939a7f5580b&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Alt+F8 매크로 &amp;gt; H_ResetTeamScoreBoard 를 실행하고 '10, 10' 을 입력하면 &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-4961e971-1e33-4a87-87b4-625fee11cfbf&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;10개 점수판을 세로 최대 10행에 맞춰서 10팀 * 1 열로 점수판을 삽입해줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-f6d863f0-6dc1-4572-b4fd-6551b7ff62d2&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;단, Score_A 그룹도형이 반드시 존재해야 합니다. &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-21f942a1-e130-4740-bfbd-7283743291ce&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;만약 '8, 4'를 입력하면 총 8개팀을 4개씩 * 2열로 만들어줍니다. &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-b8f2c740-abe3-496b-95a7-7805bef2ca5b&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;'6, 6'을 입력하면 6팀 * 1열로 점수판을 생성합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_003.png&quot; data-origin-width=&quot;1366&quot; data-origin-height=&quot;767&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/GW3ng/dJMcag6wSN0/KywrhSxogSoCS0G5kQnL5K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/GW3ng/dJMcag6wSN0/KywrhSxogSoCS0G5kQnL5K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/GW3ng/dJMcag6wSN0/KywrhSxogSoCS0G5kQnL5K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGW3ng%2FdJMcag6wSN0%2FKywrhSxogSoCS0G5kQnL5K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1366&quot; height=&quot;767&quot; data-filename=&quot;Img_003.png&quot; data-origin-width=&quot;1366&quot; data-origin-height=&quot;767&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-565128fc-eb8f-419d-b039-a3002ff6b374&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;팀이름은 슬라이드 마스터 점수판 레이아웃에서 직접 수정하거나&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-6115296c-4021-44eb-a43b-1fb65894f84f&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;슬라이드쇼에서 팀 이름을 클릭하면 팀 이름을 하나씩 수정할 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;579&quot; data-origin-height=&quot;242&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/baUffA/dJMcabc2XAE/NUwnFL6fXgLoObimRt18F0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/baUffA/dJMcabc2XAE/NUwnFL6fXgLoObimRt18F0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/baUffA/dJMcabc2XAE/NUwnFL6fXgLoObimRt18F0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbaUffA%2FdJMcabc2XAE%2FNUwnFL6fXgLoObimRt18F0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;538&quot; height=&quot;225&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;579&quot; data-origin-height=&quot;242&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✅&lt;b&gt;&lt;span&gt;&lt;span&gt; 실행 화면&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.gif&quot; data-origin-width=&quot;800&quot; data-origin-height=&quot;450&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/U4C4p/dJMcacXlYVG/dye6b72uIDwAUqXllrB870/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/U4C4p/dJMcacXlYVG/dye6b72uIDwAUqXllrB870/img.gif&quot; data-alt=&quot;실행화면1&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/U4C4p/dJMcacXlYVG/dye6b72uIDwAUqXllrB870/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/U4C4p/dJMcacXlYVG/dye6b72uIDwAUqXllrB870/img.gif&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;800&quot; height=&quot;450&quot; data-filename=&quot;1.gif&quot; data-origin-width=&quot;800&quot; data-origin-height=&quot;450&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;실행화면1&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;JBomb30_PPT기능5.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;720&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/coUOYw/dJMcajoApR0/m3YcRXpbCa1CKIWxPypOVK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/coUOYw/dJMcajoApR0/m3YcRXpbCa1CKIWxPypOVK/img.png&quot; data-alt=&quot;실행화면2&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/coUOYw/dJMcajoApR0/m3YcRXpbCa1CKIWxPypOVK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcoUOYw%2FdJMcajoApR0%2Fm3YcRXpbCa1CKIWxPypOVK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;720&quot; data-filename=&quot;JBomb30_PPT기능5.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;720&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;실행화면2&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;JBomb30_PPT기능15.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;720&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d9KIdy/dJMcahqR3Jw/LaSm7kxNZAOQe96FJEZfk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d9KIdy/dJMcahqR3Jw/LaSm7kxNZAOQe96FJEZfk0/img.png&quot; data-alt=&quot;실행화면3&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d9KIdy/dJMcahqR3Jw/LaSm7kxNZAOQe96FJEZfk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd9KIdy%2FdJMcahqR3Jw%2FLaSm7kxNZAOQe96FJEZfk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;720&quot; data-filename=&quot;JBomb30_PPT기능15.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;720&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;실행화면3&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✅&lt;b&gt;&lt;span&gt; 상시 점수판 기능의 장단점&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;- 슬라이드 마스터를 이용해서 어떤 슬라이드든 점수판을 쉽게 보여줄 수 있음.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;- 점수를 상시 확인 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;- 슬라이드 마스터 레이아웃에 점수판이 있기 때문에 슬라이드에 의해 가려질 수 있음.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 점수판 영역을 남겨놔야해서 메인 슬라이드나 문제 슬라이드가 다소 좁아지는 단점이 있음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;✅&lt;b&gt;&lt;span&gt; 샘플 파일 다운로드&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-190a81ef-8dc1-4618-96d3-86f3825f3cdb&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;샘플 문제목록 엑셀 파일과&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-7715d6f6-299b-41bc-af6f-3f6454911944&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;ppt 매크로 파일 첨부합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/OHsVu/dJMcagMgbAJ/hgLK9JO914MEd12w42F2Kk/JBomb30_PPT%EA%B8%B0%EB%8A%A5.xlsx?attach=1&amp;amp;knm=tfile.xlsx&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;JBomb30_PPT기능.xlsx&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.02MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/btZYt1/dJMcah5tzSG/xxRSz2WUh7jaVKqektHvtK/JBomb30_PPT%EA%B8%B0%EB%8A%A5.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;JBomb30_PPT기능.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;3.06MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;✅ &lt;b&gt;매크로 파일 실행시 유의사항&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-0dc33583-fd51-45f0-81a2-7076b92fa3ab&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;- pptm 파일을 다운로드한 경우 파일 속성에서 차단해제합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;(365에서는 외부에서 다운로드한 pptm 파일을 차단해제하지 않으면 열 수 없습니다.)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-0b2fb91b-f6bf-4169-aaae-da047f2cfee8&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;- 최초 파일을 열 때 반드시 '&lt;b&gt;매크로 컨텐트 허용'&lt;/b&gt; 버튼을 눌러줘야 합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_023.png&quot; data-origin-width=&quot;688&quot; data-origin-height=&quot;118&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bpovqO/dJMcaf7A9U8/tYBhmLtffXuXaVUmlT1ao0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bpovqO/dJMcaf7A9U8/tYBhmLtffXuXaVUmlT1ao0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bpovqO/dJMcaf7A9U8/tYBhmLtffXuXaVUmlT1ao0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpovqO%2FdJMcaf7A9U8%2FtYBhmLtffXuXaVUmlT1ao0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;490&quot; height=&quot;84&quot; data-filename=&quot;Img_023.png&quot; data-origin-width=&quot;688&quot; data-origin-height=&quot;118&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-c621827a-26d5-44dd-94de-d08b17eca5cc&quot; style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;- 파워포인트 보안설정에서 &lt;b&gt;모든 매크로 제외(알림표시) 이상&lt;/b&gt;으로 보안이 허용되어 있어야 합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;알림표시가 선택되어야 '매크로 콘텐츠 사용' 알림이 떠서 사용자가 허용할 수 있습니다.&lt;/span&gt;&lt;span&gt;(이 설정이 파워포인트 기본 설정입니다.)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_024.png&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;917&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bqcOAG/dJMcag6wZ6w/nej1VctBpwjnKOyiOZK9IK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bqcOAG/dJMcag6wZ6w/nej1VctBpwjnKOyiOZK9IK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bqcOAG/dJMcag6wZ6w/nej1VctBpwjnKOyiOZK9IK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbqcOAG%2FdJMcag6wZ6w%2Fnej1VctBpwjnKOyiOZK9IK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;729&quot; height=&quot;477&quot; data-filename=&quot;Img_024.png&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;917&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>PPT GAME</category>
      <category>Bomb Game</category>
      <category>ppt</category>
      <category>scoreboard</category>
      <category>슬라이드마스터</category>
      <category>점수판</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/350</guid>
      <comments>https://konahn.tistory.com/entry/BombGamePPT#entry350comment</comments>
      <pubDate>Mon, 11 May 2026 00:36:50 +0900</pubDate>
    </item>
    <item>
      <title>연결로 삽입된 미디어 경로 일괄 수정</title>
      <link>https://konahn.tistory.com/entry/UpdateLink</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;관련: &lt;a href=&quot;https://kin.naver.com/qna/detail.naver?d1id=1&amp;amp;dirId=102020103&amp;amp;docId=492654909&amp;amp;answerNo=1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;지식인&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;633&quot; data-origin-height=&quot;626&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sCIIQ/dJMcaibFUd2/EUjM4NdFKwpi4SMRY02WO1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sCIIQ/dJMcaibFUd2/EUjM4NdFKwpi4SMRY02WO1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sCIIQ/dJMcaibFUd2/EUjM4NdFKwpi4SMRY02WO1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsCIIQ%2FdJMcaibFUd2%2FEUjM4NdFKwpi4SMRY02WO1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;339&quot; height=&quot;335&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;633&quot; data-origin-height=&quot;626&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;div id=&quot;SE-0ec68ed5-2e2b-460a-b1f1-8fd7e625d371&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;p id=&quot;SE-c485649e-8772-437c-bced-bcaaee570fb9&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;요즘에는 pptx로 저장하면 기본으로 오디오가 pptx파일내에 포함되어 저장됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-a472a840-2f95-4537-9005-232cbaa901d5&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;과거 형식인 .ppt 로 저장하거나 pptx에서도 삽입 버튼에서 파일에 연결을 선택하면 오디오 파일은 포함되지 않고 링크로 삽입됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_010.png&quot; data-origin-width=&quot;315&quot; data-origin-height=&quot;133&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/p0RRB/dJMcaflHCVt/GiJ7ABkiZvqJUo7xeJjde1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/p0RRB/dJMcaflHCVt/GiJ7ABkiZvqJUo7xeJjde1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/p0RRB/dJMcaflHCVt/GiJ7ABkiZvqJUo7xeJjde1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fp0RRB%2FdJMcaflHCVt%2FGiJ7ABkiZvqJUo7xeJjde1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;315&quot; height=&quot;133&quot; data-filename=&quot;Img_010.png&quot; data-origin-width=&quot;315&quot; data-origin-height=&quot;133&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 연결로 삽입하면 pptx파일을 다른 곳으로 옮기게 되면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;경로가 맞지 않아 파일 재생에 문제가 생기고 오류 메시지가 뜹니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이럴 때 미디어의 연결 링크를 일괄로 수정하는 방법을 안내합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-f751f491-1b15-49d1-b81c-0147ff52bbce&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-c5012680-a538-47ce-ae4c-da1df121650d&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;b&gt;1. 연결 편집&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-458359a1-0bb0-4116-b7f3-b281d3ef604a&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-36f7a72f-a145-4e79-bac3-cdd8a632ffd8&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;일단 파일 &amp;gt; 정보 화면 에서 오른쪽 아래에 파일 연결 편집 메뉴가 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-99ec50d9-15c7-4743-856c-38930a7b0157&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이걸 눌러서 파일들의 위치가 어떻게 설정되어 있는지 보시고&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-998e01ee-1262-48cc-8ace-c4453845c8d1&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;똑같은 폴더에 해당 파일들을 옮기시면 재생이 될 겁니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-0588df45-a019-4ab7-8639-d111c6d731c8&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;649&quot; data-origin-height=&quot;435&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beNlzL/dJMcac3x7Zq/uUFkkgIe0KKQ5UtOSGL4P1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beNlzL/dJMcac3x7Zq/uUFkkgIe0KKQ5UtOSGL4P1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beNlzL/dJMcac3x7Zq/uUFkkgIe0KKQ5UtOSGL4P1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeNlzL%2FdJMcac3x7Zq%2FuUFkkgIe0KKQ5UtOSGL4P1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;649&quot; height=&quot;435&quot; data-origin-width=&quot;649&quot; data-origin-height=&quot;435&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-01d9d0df-1058-45b3-800e-b2bcc3ba5f91&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-af79093b-e3eb-427e-8518-a2859e693c95&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;원본 변경 버튼을 눌러 하나씩 변경할 수도 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-4904236e-e9d9-494a-b732-880969c542ef&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-6dcab36b-6d79-4d11-86ab-94b0e189146c&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-6ac375ca-45e8-4982-8454-dd493a8d6b1d&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;b&gt;2. VBA이용 방법&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-e767d1ba-be9e-4de2-a57a-3d1cd50b993c&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-3be57a6b-0be0-4eae-8afb-cfbb76d8fa67&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;VBA로 연결로 삽입된 모든 미디어에 대해&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-7864cd00-1126-4fdc-8502-6ff963596128&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;폴더 경로를 제거하고 pptx파일이 있는 현재 폴더로 변경하고 링크를 업데이트하도록&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-581eb567-5708-41b1-830e-449a33c202eb&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;할 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-d94ed9ff-1ba1-48fb-9b83-8277a7042533&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-9af2b95f-eec6-4ac4-b3c5-b493f5d89326&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Alt+F11 누르고 삽입 &amp;gt; 모듈을 추가한 다음 아래 코드를 복사해서 붙여넣습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-3f343c1f-ce15-4957-9639-efd159cb9a9d&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그 다음 F5로 매크로를 실행하면 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1774447138430&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Sub RemovePathFromMediaLink()

    Dim prs As Presentation
    Dim sld As Slide, shp As Shape
    
    Set prs = ActivePresentation
    
    For Each sld In prs.Slides
        For Each shp In sld.Shapes
            If shp.Type = msoMedia Then
                If shp.MediaFormat.IsLinked Then
                    Debug.Print &quot;Slide #&quot; &amp;amp; sld.SlideIndex
                    sname = shp.LinkFormat.SourceFullName
                    Debug.Print sname
                    sname = Mid(sname, InStrRev(sname, &quot;\&quot;) + 1)
                    shp.LinkFormat.SourceFullName = sname
                    shp.LinkFormat.Update
                    Debug.Print &quot;==&amp;gt; &quot; &amp;amp; shp.LinkFormat.SourceFullName
                End If
            End If
        Next shp
    Next sld
    
End Sub&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-fff622e0-262d-472c-a816-5dc089ba62a3&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-f3402f99-f05f-47d3-8006-0af589a740cb&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;위 코드는 C:\Users\user1\Downloads\mute04.mp3 같은 경로를 mute04.mp3 로 만들어줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-71069a57-3704-4c49-a290-dadb8157ba06&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그래서 pptx파일이 있는 현재 폴더에 해당 파일이 있으면 재생이 가능해집니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아니면 sname = Replace(sname, &quot;C:\Users\User1&quot;, &quot;C:\Users\User2&quot;) 같은 방식으로 특정 경로를 다른 경로로 수정해도 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-804d377a-4621-4112-9005-68ed79da7e58&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-5feca618-756c-484f-9776-717caf670a9f&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-f81a74d6-4eb6-4916-905a-3dd5cd0729ea&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;b&gt;3. XML 프레젠테이션으로 저장 후 경로 일괄 바꾸기&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-b57caa07-9aef-43b9-b963-09c6b12ce0da&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-4dd3447a-6512-4a84-90b3-7988b76b0e66&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;파일 &amp;gt; 다른이름으로 저장에서 Powerpoint XML 프레젠테이션으로 저장합니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-4e2f749b-3df3-4b97-8afb-e5a3b39aab1d&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;319&quot; data-origin-height=&quot;110&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pNdCL/dJMcagZb6to/K69IfW9wXyXCCcf9a1MITk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pNdCL/dJMcagZb6to/K69IfW9wXyXCCcf9a1MITk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pNdCL/dJMcagZb6to/K69IfW9wXyXCCcf9a1MITk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpNdCL%2FdJMcagZb6to%2FK69IfW9wXyXCCcf9a1MITk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;319&quot; height=&quot;110&quot; data-origin-width=&quot;319&quot; data-origin-height=&quot;110&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-39145aee-187c-4565-8479-98269b713669&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-daf9fa0a-f18e-41bb-91e2-31baa63a6e13&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-cc9d6230-e6ba-4077-945c-ecebfa81ce30&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;저장한 XML 파일을 텍스트 편집기에서 열어서&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-8b5d99d4-d1d1-42bd-b0ab-55a8a1596618&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;텍스트 찾아 바꾸기 기능을 이용해서 C:\Users\user1\Desktop\와 같은 경로를 C:\Users\user2\Desktop\ 로 변경합니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-2a0dee3d-3371-4b3a-9426-6f446facbcf0&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;298&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cJsNx0/dJMcaiipDVG/m53IkRhJYqJmFWW7R9ULhk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cJsNx0/dJMcaiipDVG/m53IkRhJYqJmFWW7R9ULhk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cJsNx0/dJMcaiipDVG/m53IkRhJYqJmFWW7R9ULhk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcJsNx0%2FdJMcaiipDVG%2Fm53IkRhJYqJmFWW7R9ULhk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;746&quot; height=&quot;298&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;298&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-4a48e471-1949-4f2b-8202-16d5c5f07695&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-c9bc13b4-9d7d-4364-93cd-b79757242f28&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;경로 이름이 조금이라도 틀리면 오류가 발생하고 경로가 한 개가 아니므로 &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-594134a9-9c6d-441b-9931-6132d653c4b6&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;주의해서 정확히 입력해서 교체합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-d0e50d15-1edc-462e-be86-0f11f870437d&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-2e6684c7-a5b2-46b6-9213-e22e74d0d29a&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;저장한 XML 파일을 다시 파워포인트에서 불러와서 다시 .pptx 혹은 .ppt로 저장합니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;4. 연결로 삽입된 링크 연결해제(파일에 포함) 시키기&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연결로 삽입된 미디어들을 pptx파일에 포함시키도록 일괄로 바꾸는 코드입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(&lt;span&gt;Alt+F11 누르고 삽입 &amp;gt; 모듈을 추가한 다음 아래 코드를 복사해서 붙여넣습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-3f343c1f-ce15-4957-9639-efd159cb9a9d&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그 다음 F5로 매크로를 실행)&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1774447474815&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Sub reEmbedLinkedMedia()

    Dim prs As Presentation
    Dim sld As Slide, shp As Shape
    
    Set prs = ActivePresentation
    
    For Each sld In prs.Slides
        For Each shp In sld.Shapes
            If shp.Type = msoMedia Then
                If shp.MediaFormat.IsLinked Then
                    Debug.Print &quot;Slide #&quot; &amp;amp; sld.SlideIndex
                    sname = shp.LinkFormat.SourceFullName
                    Debug.Print sname
                    shp.LinkFormat.BreakLink
                    Debug.Print &quot;Embedding result ==&amp;gt; &quot; &amp;amp; shp.MediaFormat.IsEmbedded
                End If
            End If
        Next shp
    Next sld
    
End Sub&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_009.png&quot; data-origin-width=&quot;632&quot; data-origin-height=&quot;646&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYXq1n/dJMcabQ7Dwm/M6EyAUtif8NvRCZ6KSnZq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYXq1n/dJMcabQ7Dwm/M6EyAUtif8NvRCZ6KSnZq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYXq1n/dJMcabQ7Dwm/M6EyAUtif8NvRCZ6KSnZq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYXq1n%2FdJMcabQ7Dwm%2FM6EyAUtif8NvRCZ6KSnZq1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;337&quot; height=&quot;344&quot; data-filename=&quot;Img_009.png&quot; data-origin-width=&quot;632&quot; data-origin-height=&quot;646&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>PPT+VBA</category>
      <category>embed</category>
      <category>LINK</category>
      <category>linkformat</category>
      <category>media.</category>
      <category>sourcefullname</category>
      <category>updatelink</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/349</guid>
      <comments>https://konahn.tistory.com/entry/UpdateLink#entry349comment</comments>
      <pubDate>Wed, 25 Mar 2026 23:18:46 +0900</pubDate>
    </item>
    <item>
      <title>엑셀링크목록 브라우저 북마크에 일괄로 추가하기</title>
      <link>https://konahn.tistory.com/entry/BookmarkBatch</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;BookmarkBatch.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;559&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cn2b69/dJMcagx0cb1/FKGgH7mi5TlIL55TKE42iK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cn2b69/dJMcagx0cb1/FKGgH7mi5TlIL55TKE42iK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cn2b69/dJMcagx0cb1/FKGgH7mi5TlIL55TKE42iK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcn2b69%2FdJMcagx0cb1%2FFKGgH7mi5TlIL55TKE42iK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;392&quot; height=&quot;214&quot; data-filename=&quot;BookmarkBatch.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;559&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀에 정리한 URL목록을 일괄로 웹브라우저 북마크로 추가할 수 있게 도와주는 VBA매크로입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 아래와 같이 엑셀에 URL을 정리했습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_020.png&quot; data-origin-width=&quot;771&quot; data-origin-height=&quot;490&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bFI2x7/dJMcacJbb3t/tW5TDq1QIze6wHlhPSrk01/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bFI2x7/dJMcacJbb3t/tW5TDq1QIze6wHlhPSrk01/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bFI2x7/dJMcacJbb3t/tW5TDq1QIze6wHlhPSrk01/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbFI2x7%2FdJMcacJbb3t%2FtW5TDq1QIze6wHlhPSrk01%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;771&quot; height=&quot;490&quot; data-filename=&quot;Img_020.png&quot; data-origin-width=&quot;771&quot; data-origin-height=&quot;490&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 링크들을 일괄로 웹브라우저 북마크에 폴더를 하나 만들어 추가하고 싶습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 모든 링크를 클릭해서 웹브라우저 탭에 띄운 다음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;열린 탭들을 북마크에 추가할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 모든 링크를 여는 것은 번거로운 작업입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 엑셀VBA로 이 과정을 자동으로 처리합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;핵심 원리는 웹브라우저 북마크를 내보내면 아래와 같은 HTML양식인데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 양식에 맞게 VBA로 북마크 HTML을 만들면 되겠습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_021.png&quot; data-origin-width=&quot;838&quot; data-origin-height=&quot;498&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qsdXQ/dJMb99TbYt2/tgDypYKKrYKkxyHfElUl1K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qsdXQ/dJMb99TbYt2/tgDypYKKrYKkxyHfElUl1K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qsdXQ/dJMb99TbYt2/tgDypYKKrYKkxyHfElUl1K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqsdXQ%2FdJMb99TbYt2%2FtgDypYKKrYKkxyHfElUl1K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;838&quot; height=&quot;498&quot; data-filename=&quot;Img_021.png&quot; data-origin-width=&quot;838&quot; data-origin-height=&quot;498&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 초반 헤더 부분과&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;lt;DL&amp;gt; Description List 태그와&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;DT&amp;gt; Description Term 태그를 이용합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원래는 DT 다음에&amp;nbsp; &amp;lt;DD&amp;gt; Description Description 이 따라오는데 생략합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;DL&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;lt;DT&amp;gt;&amp;lt;A HREF=&quot;https://your-link1.com&quot;&amp;gt;링크1&amp;lt;/A&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;lt;DT&amp;gt;&amp;lt;A&amp;nbsp;HREF=&quot;https://your-link2.com&quot;&amp;gt;링크2&amp;lt;/A&amp;gt;...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;/DL&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 식입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀 URL 목록에 대해 위와 같은 양식으로 HTML 텍스트 파일을 생성하게 하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Gemini에게 코드를 만들도록 시키고 약간만 수정했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 html파일을 UTF-8 인코딩으로 만드는 경우입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일본어, 중국어, 프랑스어 등 다른 나라 언어글자가 포함되는 경우&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ADODB.Stream을 이용해 UTF-8 인코딩방식으로 텍스트파일을 만들어야 모든 언어가 제대로 보입니다.&lt;/p&gt;
&lt;pre id=&quot;code_1773759189805&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Sub ExportToChromeBookmarks()

    Dim ws As Worksheet
    Dim lastRow As Long
    Dim i As Long
    Dim siteName As String
    Dim siteURL As String
    Dim filePath As Variant
    Dim stream As Object
    Dim sBookPath As String
    
    ' 현재 활성화된 시트를 기준으로 작업
    Set ws = ActiveSheet
    sBookPath = ws.Name
    
    ' A열의 마지막 데이터 행 찾기
    lastRow = ws.Cells(ws.Rows.Count, &quot;A&quot;).End(xlUp).Row
    
    ' 데이터가 없으면 종료
    If lastRow &amp;lt; 1 Then
        MsgBox &quot;출력할 데이터가 없습니다. A열과 B열에 데이터를 입력해주세요.&quot;, vbExclamation
        Exit Sub
    End If
    
    ' 북마크 제목
    sBookPath = InputBox(&quot;북마크 제목(Title)을 입력하세요.&quot; &amp;amp; vbNewLine &amp;amp; _
        &quot;(크롬에서는 북마크를 불러오면 해당이름의 폴더 아래 북마크들이 생성됩니다.)&quot;, &quot;Bookmark Title 입력&quot;, sBookPath)
    If Len(sBookPath) = 0 Then Exit Sub
    
    ' 저장할 파일 경로 및 이름 지정 대화상자 열기
    filePath = Application.GetSaveAsFilename(InitialFileName:=ws.Parent.Path &amp;amp; &quot;\Chrome_Bookmarks.html&quot;, _
                                             FileFilter:=&quot;HTML Files (*.html), *.html&quot;, _
                                             Title:=&quot;북마크 파일 저장 위치 선택&quot;)
    
    ' 취소를 누른 경우 종료
    If filePath = False Then Exit Sub
    
    ' 한글 깨짐 방지를 위해 UTF-8 인코딩으로 파일 저장을 돕는 ADODB.Stream 객체 생성
    Set stream = CreateObject(&quot;ADODB.Stream&quot;)
    stream.Type = 2 ' 텍스트 타입
    stream.Charset = &quot;utf-8&quot; ' UTF-8 인코딩
    stream.Open
    
    ' 크롬 북마크 표준 HTML 헤더 작성
    stream.WriteText &quot;&amp;lt;!DOCTYPE NETSCAPE-Bookmark-file-1&amp;gt;&quot; &amp;amp; vbCrLf
    stream.WriteText &quot;&quot; &amp;amp; vbCrLf
    stream.WriteText &quot;&amp;lt;META HTTP-EQUIV=&quot;&quot;Content-Type&quot;&quot; CONTENT=&quot;&quot;text/html; charset=UTF-8&quot;&quot;&amp;gt;&quot; &amp;amp; vbCrLf
    stream.WriteText &quot;&amp;lt;TITLE&amp;gt;Bookmarks&amp;lt;/TITLE&amp;gt;&quot; &amp;amp; vbCrLf
    stream.WriteText &quot;&amp;lt;H1&amp;gt;Bookmarks&amp;lt;/H1&amp;gt;&quot; &amp;amp; vbCrLf
    stream.WriteText &quot;&amp;lt;DL&amp;gt;&amp;lt;p&amp;gt;&quot; &amp;amp; vbCrLf
    stream.WriteText &quot;&amp;lt;DT&amp;gt;&amp;lt;H3&amp;gt;&quot; &amp;amp; sBookPath &amp;amp; &quot;&amp;lt;/H3&amp;gt;&quot; &amp;amp; vbCrLf         'Bookmark Folder Name
    stream.WriteText &quot;&amp;lt;DL&amp;gt;&amp;lt;p&amp;gt;&quot; &amp;amp; vbCrLf
    
    ' 2행부터 마지막 행까지 순회하며 데이터 추출
    For i = 2 To lastRow
        siteName = ws.Cells(i, 1).Value ' A열: 사이트 이름
        siteURL = ws.Cells(i, 2).Value  ' B열: URL
        
        ' 이름과 URL이 모두 있는 경우에만 북마크 태그 추가
        If Trim(siteName) &amp;lt;&amp;gt; &quot;&quot; And Left(Trim(siteURL), 4) Like &quot;http&quot; Then
            ' &amp;lt;DT&amp;gt;&amp;lt;A HREF=&quot;URL&quot;&amp;gt;사이트이름&amp;lt;/A&amp;gt; 형식으로 추가
            stream.WriteText &quot;    &amp;lt;DT&amp;gt;&amp;lt;A HREF=&quot;&quot;&quot; &amp;amp; siteURL &amp;amp; &quot;&quot;&quot;&amp;gt;&quot; &amp;amp; siteName &amp;amp; &quot;&amp;lt;/A&amp;gt;&quot; &amp;amp; vbCrLf
        End If
    Next i
    
    ' 꼬리말 작성
    stream.WriteText &quot;&amp;lt;/DL&amp;gt;&amp;lt;p&amp;gt;&quot; &amp;amp; vbCrLf
    stream.WriteText &quot;&amp;lt;/DL&amp;gt;&amp;lt;p&amp;gt;&quot; &amp;amp; vbCrLf
    
    ' 파일로 저장 (adSaveCreateOverWrite = 2 : 덮어쓰기 허용)
    stream.SaveToFile filePath, 2
    stream.Close
    
    MsgBox &quot;크롬 북마크 파일이 성공적으로 생성되었습니다!&quot; &amp;amp; vbCrLf &amp;amp; _
           &quot;저장 경로: &quot; &amp;amp; filePath, vbInformation
End Sub&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한글, 영어만 사용하는 경우 아래와 같이 ANSI인코딩으로 HTML 텍스트파일을 만들어도 됩니다.&lt;/p&gt;
&lt;pre id=&quot;code_1773759315133&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Sub ExportToChromeBookmarks_ANSI()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim i As Long
    Dim siteName As String
    Dim siteURL As String
    Dim filePath As Variant
    Dim fileNum As Integer
    
    ' 현재 활성화된 시트를 기준으로 작업
    Set ws = ActiveSheet
    
    ' A열의 마지막 데이터 행 찾기
    lastRow = ws.Cells(ws.Rows.Count, &quot;A&quot;).End(xlUp).Row
    
    ' 데이터가 없으면 종료
    If lastRow &amp;lt; 1 Then
        MsgBox &quot;출력할 데이터가 없습니다. A열과 B열에 데이터를 입력해주세요.&quot;, vbExclamation
        Exit Sub
    End If
     
    ' 북마크 제목
    sBookPath = InputBox(&quot;북마크 제목(Title)을 입력하세요.&quot; &amp;amp; vbNewLine &amp;amp; _
        &quot;(크롬에서는 북마크를 불러오면 해당이름의 폴더아래 북마크들이 생성됩니다.)&quot;, &quot;Bookmark Title 입력&quot;, sBookPath)
    If Len(sBookPath) = 0 Then Exit Sub
    
    ' 저장할 파일 경로 및 이름 지정 대화상자 열기
    filePath = Application.GetSaveAsFilename(InitialFileName:=ws.Parent.Path &amp;amp; &quot;\Chrome_Bookmarks.html&quot;, _
                                             FileFilter:=&quot;HTML Files (*.html), *.html&quot;, _
                                             Title:=&quot;북마크 파일 저장 위치 선택&quot;)
    
    ' 취소를 누른 경우 종료
    If filePath = False Then Exit Sub
    
    ' 사용 가능한 빈 파일 번호 가져오기
    fileNum = FreeFile
    
    ' 기본 텍스트 파일 쓰기 모드로 열기 (ANSI 인코딩)
    Open filePath For Output As #fileNum
    
    ' 크롬 북마크 표준 HTML 헤더 작성
    Print #fileNum, &quot;&amp;lt;!DOCTYPE NETSCAPE-Bookmark-file-1&amp;gt;&quot;
    Print #fileNum, &quot;&quot;
    ' 주의: 파일은 ANSI로 저장되지만 크롬 규격상 헤더에는 UTF-8로 명시해 둡니다.
    Print #fileNum, &quot;&amp;lt;META HTTP-EQUIV=&quot;&quot;Content-Type&quot;&quot; CONTENT=&quot;&quot;text/html; charset=ansi&quot;&quot;&amp;gt;&quot;
    Print #fileNum, &quot;&amp;lt;TITLE&amp;gt;Bookmarks&amp;lt;/TITLE&amp;gt;&quot;
    Print #fileNum, &quot;&amp;lt;H1&amp;gt;Bookmarks&amp;lt;/H1&amp;gt;&quot;
    Print #fileNum, &quot;&amp;lt;DL&amp;gt;&amp;lt;p&amp;gt;&quot;
    Print #fileNum, &quot;&amp;lt;DT&amp;gt;&amp;lt;H3&amp;gt;&quot; &amp;amp; ws.Name &amp;amp; &quot;&amp;lt;/H3&amp;gt;&quot; &amp;amp; vbCrLf         'Bookmark Folder Name
    Print #fileNum, &quot;&amp;lt;DL&amp;gt;&amp;lt;p&amp;gt;&quot; &amp;amp; vbCrLf
    
    ' 2행부터 마지막 행까지 순회하며 데이터 추출
    For i = 2 To lastRow
        siteName = ws.Cells(i, 1).Value ' A열: 사이트 이름
        siteURL = ws.Cells(i, 2).Value  ' B열: URL
        
        ' 이름과 URL이 모두 있는 경우에만 북마크 태그 추가
        If Trim(siteName) &amp;lt;&amp;gt; &quot;&quot; And Left(Trim(siteURL), 4) Like &quot;http&quot; Then
            ' &amp;lt;DT&amp;gt;&amp;lt;A HREF=&quot;URL&quot;&amp;gt;사이트이름&amp;lt;/A&amp;gt; 형식으로 기록
            Print #fileNum, &quot;    &amp;lt;DT&amp;gt;&amp;lt;A HREF=&quot;&quot;&quot; &amp;amp; siteURL &amp;amp; &quot;&quot;&quot;&amp;gt;&quot; &amp;amp; siteName &amp;amp; &quot;&amp;lt;/A&amp;gt;&quot;
        End If
    Next i
    
    ' 꼬리말 작성
    Print #fileNum, &quot;&amp;lt;/DL&amp;gt;&amp;lt;p&amp;gt;&quot;
    Print #fileNum, &quot;&amp;lt;/DL&amp;gt;&amp;lt;p&amp;gt;&quot;
    
    ' 파일 닫기
    Close #fileNum
    
    MsgBox &quot;크롬 북마크 파일이 성공적으로 생성되었습니다!&quot; &amp;amp; vbCrLf &amp;amp; _
           &quot;저장 경로: &quot; &amp;amp; filePath, vbInformation
End Sub&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀에 URL을 정리하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Alt+F8을 눌러 매크로창에서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;둘 중의 하나의 매크로를 실행하면 아래처럼 북마크 HTML을 생성합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_026.png&quot; data-origin-width=&quot;1072&quot; data-origin-height=&quot;731&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bKMJAj/dJMcajao6NG/4xffCaZ94zwdg96aXNtut0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bKMJAj/dJMcajao6NG/4xffCaZ94zwdg96aXNtut0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bKMJAj/dJMcajao6NG/4xffCaZ94zwdg96aXNtut0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKMJAj%2FdJMcajao6NG%2F4xffCaZ94zwdg96aXNtut0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1072&quot; height=&quot;731&quot; data-filename=&quot;Img_026.png&quot; data-origin-width=&quot;1072&quot; data-origin-height=&quot;731&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대화상자가 뜨면 북마크 제목을 확인하고 수정합니다. 북마크 제목은 &amp;lt;h3&amp;gt; 태그로 문서의 부제목 역학인데 생성된 북마크 HTML을 크롬브라우저에서 불러오면 이 폴더 이름 아래에 북마크들이 생성됩니다. 다른 브라우저에서는 영향이 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;622&quot; data-origin-height=&quot;214&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfyaZA/dJMcach57iK/zAjP0QiS1rJYKmqAKLLH6k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfyaZA/dJMcach57iK/zAjP0QiS1rJYKmqAKLLH6k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfyaZA/dJMcach57iK/zAjP0QiS1rJYKmqAKLLH6k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfyaZA%2FdJMcach57iK%2FzAjP0QiS1rJYKmqAKLLH6k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;439&quot; height=&quot;151&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;622&quot; data-origin-height=&quot;214&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성된 Chrome_Bookmarks.html 입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_028.png&quot; data-origin-width=&quot;723&quot; data-origin-height=&quot;451&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/boN74b/dJMcacbjT1v/FBFJwblRrm5DV6EX1ekwJk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/boN74b/dJMcacbjT1v/FBFJwblRrm5DV6EX1ekwJk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/boN74b/dJMcacbjT1v/FBFJwblRrm5DV6EX1ekwJk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FboN74b%2FdJMcacbjT1v%2FFBFJwblRrm5DV6EX1ekwJk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;723&quot; height=&quot;451&quot; data-filename=&quot;Img_028.png&quot; data-origin-width=&quot;723&quot; data-origin-height=&quot;451&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 웹브라우저에서 북마크 가져오기를 누르고 이 HTML파일을 불러오면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;크롬, 엣지, 웨일 등 크롬 기반 웹브라우저에서 Ctrl+Shift+O를 누르고 북마크 관리자를 켭니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_014.png&quot; data-origin-width=&quot;671&quot; data-origin-height=&quot;770&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZpQJa/dJMcaiJkKj8/lyTfJmjG0MG8LfhLTFToqk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZpQJa/dJMcaiJkKj8/lyTfJmjG0MG8LfhLTFToqk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZpQJa/dJMcaiJkKj8/lyTfJmjG0MG8LfhLTFToqk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZpQJa%2FdJMcaiJkKj8%2FlyTfJmjG0MG8LfhLTFToqk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;671&quot; height=&quot;770&quot; data-filename=&quot;Img_014.png&quot; data-origin-width=&quot;671&quot; data-origin-height=&quot;770&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 다음 오른쪽 상단 점 세개를 누르고 북마크 가져오기를 누르고 북마크 HTML파일을 선택합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_015.png&quot; data-origin-width=&quot;1320&quot; data-origin-height=&quot;685&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bHHkK4/dJMcabQ0pTK/cY7F1TG6PPjJDBVl1qDQ21/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bHHkK4/dJMcabQ0pTK/cY7F1TG6PPjJDBVl1qDQ21/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bHHkK4/dJMcabQ0pTK/cY7F1TG6PPjJDBVl1qDQ21/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbHHkK4%2FdJMcabQ0pTK%2FcY7F1TG6PPjJDBVl1qDQ21%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1320&quot; height=&quot;685&quot; data-filename=&quot;Img_015.png&quot; data-origin-width=&quot;1320&quot; data-origin-height=&quot;685&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(참고로 기존 북마크 폴더가 없다면 폴더를 하나 만들고 가져오는 것이 좋을 수 있습니다.)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_017.png&quot; data-origin-width=&quot;936&quot; data-origin-height=&quot;459&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/FK4rC/dJMcabcoj9O/RjP306RVJTLAJGw08EkQ1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/FK4rC/dJMcabcoj9O/RjP306RVJTLAJGw08EkQ1k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/FK4rC/dJMcabcoj9O/RjP306RVJTLAJGw08EkQ1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFK4rC%2FdJMcabcoj9O%2FRjP306RVJTLAJGw08EkQ1k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;936&quot; height=&quot;459&quot; data-filename=&quot;Img_017.png&quot; data-origin-width=&quot;936&quot; data-origin-height=&quot;459&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래처럼 크롬에서는 지정된 폴더(myFolder)가 만들어지고 그 안에 북마크가 일괄 생성됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;크롬에서는&amp;nbsp;북마크&amp;nbsp;HTML에서&amp;nbsp;&amp;lt;H3&amp;gt;&amp;nbsp;태그&amp;nbsp;안의&amp;nbsp;내용대로&amp;nbsp;폴더가&amp;nbsp;만들어지는&amp;nbsp;것으로&amp;nbsp;보입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다른 브라우저에서는 '가져온 북마크'라는 폴더안에 생성됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_019.png&quot; data-origin-width=&quot;759&quot; data-origin-height=&quot;364&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mgF7w/dJMcabcoj9N/KiHkjaytexouowCec5oiy1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mgF7w/dJMcabcoj9N/KiHkjaytexouowCec5oiy1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mgF7w/dJMcabcoj9N/KiHkjaytexouowCec5oiy1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmgF7w%2FdJMcabcoj9N%2FKiHkjaytexouowCec5oiy1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;759&quot; height=&quot;364&quot; data-filename=&quot;Img_019.png&quot; data-origin-width=&quot;759&quot; data-origin-height=&quot;364&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엣지에서 즐겨찾기 가져오기:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Ctrl+Shift+O 누르고 즐겨찾기 가져오기 &amp;gt; HTML 파일 &amp;gt; 파일선택&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_029.png&quot; data-origin-width=&quot;1164&quot; data-origin-height=&quot;530&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwV9MC/dJMcahcCB9T/XF2E16VRIB4GwYqiHVnX2k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwV9MC/dJMcahcCB9T/XF2E16VRIB4GwYqiHVnX2k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwV9MC/dJMcahcCB9T/XF2E16VRIB4GwYqiHVnX2k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbwV9MC%2FdJMcahcCB9T%2FXF2E16VRIB4GwYqiHVnX2k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1164&quot; height=&quot;530&quot; data-filename=&quot;Img_029.png&quot; data-origin-width=&quot;1164&quot; data-origin-height=&quot;530&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이어폭스에서 북마크 가져오기:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Ctrl+Shift+O누르고 가져오기 &amp;gt; HTML에서 북마크 가져오기&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_031.png&quot; data-origin-width=&quot;802&quot; data-origin-height=&quot;397&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5IKND/dJMcaivNVuL/HjeGdjFs9Kp0JY4jnB4cOk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5IKND/dJMcaivNVuL/HjeGdjFs9Kp0JY4jnB4cOk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5IKND/dJMcaivNVuL/HjeGdjFs9Kp0JY4jnB4cOk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5IKND%2FdJMcaivNVuL%2FHjeGdjFs9Kp0JY4jnB4cOk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;802&quot; height=&quot;397&quot; data-filename=&quot;Img_031.png&quot; data-origin-width=&quot;802&quot; data-origin-height=&quot;397&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✅ 매크로가 포함된 샘플 파일입니다:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/82FEv/dJMcaduvrOj/pQ8kQ3hmKqArUKkS80d8MK/SaveAsBookmark1.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;SaveAsBookmark1.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.04MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_032.png&quot; data-origin-width=&quot;1347&quot; data-origin-height=&quot;627&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/J4RLD/dJMcaf0abEv/kkJvSx9gcSNXSKw6rGo7ik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/J4RLD/dJMcaf0abEv/kkJvSx9gcSNXSKw6rGo7ik/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/J4RLD/dJMcaf0abEv/kkJvSx9gcSNXSKw6rGo7ik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJ4RLD%2FdJMcaf0abEv%2FkkJvSx9gcSNXSKw6rGo7ik%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1347&quot; height=&quot;627&quot; data-filename=&quot;Img_032.png&quot; data-origin-width=&quot;1347&quot; data-origin-height=&quot;627&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고: addHyperlink2Self 매크로는&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀에서 B열의 URL링크에 대해 자기자신에게 하이퍼링크를 일괄로 적용해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✔️ 자바스크립트 버전:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀 등의 표를 아래 사이트에 붙여 넣고 Generate 버튼을 누르면 HTML로 만들어줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 내용을 복사해서 HTML파일로 저장하세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원본은 &lt;a href=&quot;https://jsfiddle.net/k0m9rqho/show&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://jsfiddle.net/k0m9rqho/show&lt;/a&gt;인데 로그인이 필요해서 약간 수정해서 다른 데 올려놨습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;http://handin.woobi.co.kr/bookmark/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;http://handin.woobi.co.kr/bookmark/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1774228634530&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;http://handin.woobi.co.kr/bookmark/&quot; data-og-description=&quot;Copy the text below and save it as an .html file. Open your browser's Bookmark Manager (Ctrl+Shift+O), then select 'Import Bookmarks' from the menu to upload the file. ✨ 사용 방법: 1. 위 박스의 내용을 복사하여 메모장에 붙여넣고 &quot; data-og-host=&quot;handin.woobi.co.kr&quot; data-og-source-url=&quot;http://handin.woobi.co.kr/bookmark/&quot; data-og-url=&quot;http://handin.woobi.co.kr/bookmark/&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;http://handin.woobi.co.kr/bookmark/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;http://handin.woobi.co.kr/bookmark/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;http://handin.woobi.co.kr/bookmark/&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Copy the text below and save it as an .html file. Open your browser's Bookmark Manager (Ctrl+Shift+O), then select 'Import Bookmarks' from the menu to upload the file. ✨ 사용 방법: 1. 위 박스의 내용을 복사하여 메모장에 붙여넣고&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;handin.woobi.co.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>XLS+VBA</category>
      <category>batch</category>
      <category>bookmark</category>
      <category>북마크</category>
      <category>일괄</category>
      <category>자동</category>
      <category>즐겨찾기</category>
      <category>폴더</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/348</guid>
      <comments>https://konahn.tistory.com/entry/BookmarkBatch#entry348comment</comments>
      <pubDate>Wed, 18 Mar 2026 00:44:59 +0900</pubDate>
    </item>
    <item>
      <title>구글 시트에서 바로 사용 가능한 AI 함수</title>
      <link>https://konahn.tistory.com/entry/AIFunctions</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;unnamed.jpg&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bApwO7/dJMcadOJ2fe/Lugh6rPOVG5KxnXn1oVcU0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bApwO7/dJMcadOJ2fe/Lugh6rPOVG5KxnXn1oVcU0/img.jpg&quot; data-alt=&quot;구글 시트의 셀에서 =GPT(&amp;quot;prompt&amp;quot;) 수식으로 바로 AI명령 실행이 가능하다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bApwO7/dJMcadOJ2fe/Lugh6rPOVG5KxnXn1oVcU0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbApwO7%2FdJMcadOJ2fe%2FLugh6rPOVG5KxnXn1oVcU0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1408&quot; height=&quot;768&quot; data-filename=&quot;unnamed.jpg&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;구글 시트의 셀에서 =GPT(&quot;prompt&quot;) 수식으로 바로 AI명령 실행이 가능하다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;928&quot; data-origin-height=&quot;381&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b2fFi2/dJMcahRbVL4/u3VMKwayRnnk5e9v0vBfJk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b2fFi2/dJMcahRbVL4/u3VMKwayRnnk5e9v0vBfJk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b2fFi2/dJMcahRbVL4/u3VMKwayRnnk5e9v0vBfJk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb2fFi2%2FdJMcahRbVL4%2Fu3VMKwayRnnk5e9v0vBfJk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;928&quot; height=&quot;381&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;928&quot; data-origin-height=&quot;381&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://konahn.tistory.com/entry/GeminiAPI-Rephrasing&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;엑셀 VBA&lt;/a&gt;로&amp;nbsp; Gemini에게 명령을 보내 결과값을 가져오는 함수를 만든적이 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 추가기능에서 이미 함수를 제공하고 있네요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;GPT for Sheets and Docs&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Imd_001.png&quot; data-origin-width=&quot;996&quot; data-origin-height=&quot;673&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Q22CT/dJMcaaR6dqX/hpzcAmMBNVjrzu1arcMbq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Q22CT/dJMcaaR6dqX/hpzcAmMBNVjrzu1arcMbq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Q22CT/dJMcaaR6dqX/hpzcAmMBNVjrzu1arcMbq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQ22CT%2FdJMcaaR6dqX%2FhpzcAmMBNVjrzu1arcMbq1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;996&quot; height=&quot;673&quot; data-filename=&quot;Imd_001.png&quot; data-origin-width=&quot;996&quot; data-origin-height=&quot;673&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제일 많이 알려지고 설치된 것은 'GPT for Sheets and Docs'라는 추가기능이 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;확장프로그램 &amp;gt; 부가기능 &amp;gt; 부가기능 설치하기 에서 검색을 해서 추가기능을 설치하면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 구글 시트상에서&amp;nbsp; 원하는 셀에&lt;b&gt; =GPT ( &quot;프롬프트 명령&quot;, 값(명령에 덧붙여질 값, 생략가능), 온도(0~1사이), 사용할모델)&lt;/b&gt; 과 같은 함수식을 이용할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;간단히 특정 단어에 대한 예문을 생성하라고 한다면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;=GPT(A1 &amp;amp; &quot;라는 영어단어를 사용한 예문을 하나만 만들어줘&quot;)&lt;/span&gt; 라고 입력하면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잠시 뒤에 결과값을 가져옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;928&quot; data-origin-height=&quot;381&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lDJ95/dJMcadHZk5h/FoXS5li8eQBib3q7yF02ck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lDJ95/dJMcadHZk5h/FoXS5li8eQBib3q7yF02ck/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lDJ95/dJMcadHZk5h/FoXS5li8eQBib3q7yF02ck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlDJ95%2FdJMcadHZk5h%2FFoXS5li8eQBib3q7yF02ck%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;928&quot; height=&quot;381&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;928&quot; data-origin-height=&quot;381&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 밖에 사용할 수 있는 GPT 명령들입니다. 오른쪽 추가기능 창과 도움말에서 확인 가능합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_007.png&quot; data-origin-width=&quot;314&quot; data-origin-height=&quot;685&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ckh3sK/dJMcadVwmJ6/ee9uL8IVXKk6DrlXoPKmWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ckh3sK/dJMcadVwmJ6/ee9uL8IVXKk6DrlXoPKmWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ckh3sK/dJMcadVwmJ6/ee9uL8IVXKk6DrlXoPKmWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fckh3sK%2FdJMcadVwmJ6%2Fee9uL8IVXKk6DrlXoPKmWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;314&quot; height=&quot;685&quot; data-filename=&quot;Img_007.png&quot; data-origin-width=&quot;314&quot; data-origin-height=&quot;685&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GPT는 주로 하나의 셀에 결과를 받아오지만(여러 행에 결과를 출력하기도 함)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;GPT_LIST&lt;/b&gt; 는 결과값을 여러행으로 가져올 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 GPT_LIST는 위와 같이 여러 단어에 대한 결과값을 한꺼번에 가져 올 수 있어 매우 유용합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래와 같은 형식입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두번째 인수인 Value 값에 해당 영역을 지정해서 여러 셀(단어)를 넘겨서 결과값도 한 번에 아래로 쭉 출력할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1773483985819&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;=GPT_LIST(&quot;다음 영어 단어를 사용하는, 수준 높은 대표적인 짧은 영어 예문 하나만 만들어줘. 영어 문장만 출력해.&quot;,B23:B31,0.8,&quot;gpt-4.1&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 함수는 한개의 셀에만 입력하면 결과가&amp;nbsp; 아래로 쭉 대상 셀들 옆에 값들이 출력됩니다. 각 셀에 함수식을 입력할 필요가 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_010.png&quot; data-origin-width=&quot;1098&quot; data-origin-height=&quot;425&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DWL3v/dJMcac98wSl/MAxAypl5CRda5FR2EXG9Y1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DWL3v/dJMcac98wSl/MAxAypl5CRda5FR2EXG9Y1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DWL3v/dJMcac98wSl/MAxAypl5CRda5FR2EXG9Y1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDWL3v%2FdJMcac98wSl%2FMAxAypl5CRda5FR2EXG9Y1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1098&quot; height=&quot;425&quot; data-filename=&quot;Img_010.png&quot; data-origin-width=&quot;1098&quot; data-origin-height=&quot;425&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그밖에 GPT_Extract는 문자열에서 인공지능이 계산해서 값을 추출합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ex) =GPT_EXTRACT(&quot;I worked 12 years at Amazon.com and Apple&quot;, &quot;companies&quot;) 를 입력하면 'Amazon.com, Apple' 이라는 회사명을 찾아 줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GPT_Format은 문자열을 인공지능계산으로 특정 형식으로 만듭니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ex) =GPT_FORMAT(&quot;14 February 71&quot;, &quot;iso&quot;)&amp;nbsp;&lt;br /&gt;=GPT_FORMAT(&quot;8201012345678&quot;,&quot;international phone number&quot;)&amp;nbsp; =&amp;gt; +82&amp;nbsp;10&amp;nbsp;1234&amp;nbsp;5678&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GPT_SPLIT은 인공지능으로 문자열을 분리해줍니다.&lt;br /&gt;ex) =GPT_SPLIT(&quot;Hello!&amp;nbsp;How&amp;nbsp;are&amp;nbsp;you?&amp;nbsp;Have&amp;nbsp;you&amp;nbsp;heard&amp;nbsp;of&amp;nbsp;GPT&amp;nbsp;for&amp;nbsp;Sheets?&quot;,&quot;sentences&quot;)&lt;br /&gt;=GPT_HSPLIT(&quot;Hello! How are you? Have you heard of GPT for Sheets?&quot;,&quot;sentences&quot;) =&amp;gt; 세로 행으로 결과 출력&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;GPT_CLASSIFY는 인공지능이 나열된 값들이 속한 분류를 추측해냅니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;=GPT_CLASSIFY(&quot;banana&quot;, &quot;fruit, &quot;vegetable&quot;) =&amp;gt; fruit&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GPT_MATCH 는 인공지능판 VLookup 같은 함수입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=xKqrn9m4PLo&amp;amp;t=8s&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.youtube.com/watch?v=xKqrn9m4PLo&amp;amp;t=8s&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;=GPT_MATCH(search_keys,&amp;nbsp;lookup_range,&amp;nbsp;[confidence],&amp;nbsp;[stats],&amp;nbsp;[top_k])&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ex) =GPT_MATCH(A1:A10,B1:B4) 는 B1:B4 에 대해서 A1:A10의 값과 비교해서 유사성이 있는 결과값을 출력합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;=GPT_MATCH(A1:A10,B1:B4, ,True) 로 stats 옵션을 켜면 옆에 유사도를 소숫점으로 표시해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #01070d; text-align: -webkit-left;&quot;&gt;=GPT_MATCH(A1:A10,B1:B4, 0.8) 을 해주면 유사성이 0.8이상인 셀들의 경우만 결과값을 출력합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GPT_VISION으로 이미지 인식 처리가 가능합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A1에 이미지 주소가 있고 A1 링크의 사진에 대해 설명해보라고 한다면&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;=GPT_VISION(&quot;Write a short description for this product&quot;, A1, , , &quot;gpt-4.1&quot;)&amp;nbsp; 라고 하면 됩니다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 함수들을 직접 Prompt로 서술/설명해서 GPT 함수로 호출할 수도 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모든 함수 Documentation&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gptforwork.com/help/usage/gpt-for-sheets/gpt-functions/all-gpt-functions&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://gptforwork.com/help/usage/gpt-for-sheets/gpt-functions/all-gpt-functions&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1773493962305&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;All GPT functions in GPT for Sheets | GPT for Work Documentation&quot; data-og-description=&quot;All the GPT functions, with simple examples and an extensive list of parameters.&quot; data-og-host=&quot;gptforwork.com&quot; data-og-source-url=&quot;https://gptforwork.com/help/usage/gpt-for-sheets/gpt-functions/all-gpt-functions&quot; data-og-url=&quot;https://gptforwork.com/help/usage/gpt-for-sheets/gpt-functions/all-gpt-functions&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/j3DrN/dJMb88eZgGi/mKsNVnMclBS9hHB0NwRNj0/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/bwDQWJ/dJMb8952dQ1/PMm3BX8PuzeLArJKDPKUSK/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630&quot;&gt;&lt;a href=&quot;https://gptforwork.com/help/usage/gpt-for-sheets/gpt-functions/all-gpt-functions&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://gptforwork.com/help/usage/gpt-for-sheets/gpt-functions/all-gpt-functions&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/j3DrN/dJMb88eZgGi/mKsNVnMclBS9hHB0NwRNj0/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/bwDQWJ/dJMb8952dQ1/PMm3BX8PuzeLArJKDPKUSK/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;All GPT functions in GPT for Sheets | GPT for Work Documentation&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;All the GPT functions, with simple examples and an extensive list of parameters.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;gptforwork.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이렇듯 모두 기존 스프레드시트 함수보다 한 단계 앞서서 인공지능이 계산을 하고 추론해서 결과값을 가져옵니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;좀 더 사람이 생각하는 방식과 가깝게 함수를 이용할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 함수의 인수로 사용되는 값들(대상 Value가 들어 있는 셀이나 영역, 온도, 모델명 등)도 =GPT(&quot;prompt&quot;, A1, B1, C1)처럼 특정 셀에서 변수처럼 가져올 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 GPT함수기능은&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;추가기능을 설치하고 추가기능의 권한사용에 동의해야 작동합니다.&lt;/li&gt;
&lt;li&gt;실행하는데 약간의 시간이 소요됩니다.&lt;/li&gt;
&lt;li&gt;서버 연결이 원활하지 않을 경우 오류가 표시됩니다.&lt;/li&gt;
&lt;li&gt;계속 실행하게 되면 요금이 부과될 수 있기 때문에 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;최초에만 실행됩니다.&lt;span&gt; 문서를 닫아도 결과값이 유지됩니다.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;값을 갱신하려면 대상 셀값을 변경하거나 수식을 고치거나 GPT 추가기능에서 Generate&amp;nbsp; 기능을 이용합니다.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;데이터를 많이 사용하려면 추가적인 유료 api키가 필요할 수 있습니다.&lt;/li&gt;
&lt;li&gt;아직 GPT_IMAGE같은 이미지를 결과값으로 출력하는 함수는 지원하지 않는 걸로 보입니다.&lt;/li&gt;
&lt;li&gt;마찬가지로 아직 특정형식의 파일을 결과값으로 출력하는 함수도 지원하지 않습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 모델별 과금 정도나 비용, 기능제약 등에 대한 안내입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_011.png&quot; data-origin-width=&quot;331&quot; data-origin-height=&quot;588&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TJ2eW/dJMcah4KatO/dIFkaUMHulOWotrX1OZxE0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TJ2eW/dJMcah4KatO/dIFkaUMHulOWotrX1OZxE0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TJ2eW/dJMcah4KatO/dIFkaUMHulOWotrX1OZxE0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTJ2eW%2FdJMcah4KatO%2FdIFkaUMHulOWotrX1OZxE0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;331&quot; height=&quot;588&quot; data-filename=&quot;Img_011.png&quot; data-origin-width=&quot;331&quot; data-origin-height=&quot;588&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비슷한 AI 추가기능들이 많습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;AI Assist for Gemini in Sheets&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Imd_002.png&quot; data-origin-width=&quot;993&quot; data-origin-height=&quot;650&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lx75w/dJMcafZ74qa/k5IfmpyMvxy588KCtSWykk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lx75w/dJMcafZ74qa/k5IfmpyMvxy588KCtSWykk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lx75w/dJMcafZ74qa/k5IfmpyMvxy588KCtSWykk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Flx75w%2FdJMcafZ74qa%2Fk5IfmpyMvxy588KCtSWykk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;993&quot; height=&quot;650&quot; data-filename=&quot;Imd_002.png&quot; data-origin-width=&quot;993&quot; data-origin-height=&quot;650&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 Gemini 추가기능은&amp;nbsp; API 키가 필요합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래처럼 &lt;a href=&quot;https://aistudio.google.com&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;aistudio.google.com&lt;/a&gt;을 방문해서 API키를 복사해서 이 추가기능에 등록해줘야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;969&quot; data-origin-height=&quot;453&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/HZRuP/dJMcaflydiX/WFAQfkGHxG0BOhkgKZyI60/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/HZRuP/dJMcaflydiX/WFAQfkGHxG0BOhkgKZyI60/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/HZRuP/dJMcaflydiX/WFAQfkGHxG0BOhkgKZyI60/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHZRuP%2FdJMcaflydiX%2FWFAQfkGHxG0BOhkgKZyI60%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;969&quot; height=&quot;453&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;969&quot; data-origin-height=&quot;453&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Get API Key를 누르고 API키를 생성하거나 기존에 생성했던 API키를 복사합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추가기능 창을 열거나 확장프로그램 메뉴 &amp;gt;&amp;nbsp; AI Assist for Gemini in Sheets &amp;gt; Set API Key 메뉴에서에서 API키를 등록합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 사용방법은 GPT 함수와 유사합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_009.png&quot; data-origin-width=&quot;943&quot; data-origin-height=&quot;369&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oZ3vR/dJMcad2hpRe/RlCS4cTwkj77easPANgVG0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oZ3vR/dJMcad2hpRe/RlCS4cTwkj77easPANgVG0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oZ3vR/dJMcad2hpRe/RlCS4cTwkj77easPANgVG0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoZ3vR%2FdJMcad2hpRe%2FRlCS4cTwkj77easPANgVG0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;943&quot; height=&quot;369&quot; data-filename=&quot;Img_009.png&quot; data-origin-width=&quot;943&quot; data-origin-height=&quot;369&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수식 명령어도 GPT와 유사합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_012.png&quot; data-origin-width=&quot;333&quot; data-origin-height=&quot;673&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYhZxc/dJMcaaq00kI/DqQKm1s60hmPYQ2N2Psqk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYhZxc/dJMcaaq00kI/DqQKm1s60hmPYQ2N2Psqk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYhZxc/dJMcaaq00kI/DqQKm1s60hmPYQ2N2Psqk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYhZxc%2FdJMcaaq00kI%2FDqQKm1s60hmPYQ2N2Psqk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;333&quot; height=&quot;673&quot; data-filename=&quot;Img_012.png&quot; data-origin-width=&quot;333&quot; data-origin-height=&quot;673&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GPT_VISION처럼 이미지 관련 처리도 가능합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;=GEM_VISION(&quot;Write&amp;nbsp;a&amp;nbsp;short&amp;nbsp;description&amp;nbsp;for&amp;nbsp;this&amp;nbsp;product&quot;,&amp;nbsp;A1)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코드 작성도 가능합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;=GEM_CODE(&quot;Print&amp;nbsp;Hello&amp;nbsp;World&amp;nbsp;in&amp;nbsp;Java.&quot;)&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;맞춤법 편집도 가능합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;=GEM_EDIT(&quot;For&amp;nbsp;sum&amp;nbsp;reezon&amp;nbsp;thoose&amp;nbsp;nunsberz&amp;nbsp;arnt&amp;nbsp;addin&amp;nbsp;up&quot;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스팸인지 아닌지도 판단해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;=GEM_SPAM(&quot;Your&amp;nbsp;text&amp;nbsp;here&quot;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용 가능한 수식 Docmentation&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://geminiforwork.gwaddons.com/gemini-for-sheets/gemini-functions/all-available-functions&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://geminiforwork.gwaddons.com/gemini-for-sheets/gemini-functions/all-available-functions&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1773494343386&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;All available functions | Gemini for Workspace | Gemini AI in Sheets &amp;amp; Docs&quot; data-og-description=&quot;Discover all available functions in Gemini for Sheets and Docs, along with simple examples and an extensive list of paramaters.&quot; data-og-host=&quot;geminiforwork.gwaddons.com:443&quot; data-og-source-url=&quot;https://geminiforwork.gwaddons.com/gemini-for-sheets/gemini-functions/all-available-functions&quot; data-og-url=&quot;https://www.geminiforwork.gwaddons.com/gemini-for-sheets/gemini-functions/all-available-functions&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/47QoA/dJMb8QekO8s/K5Dgc9mDdzOSA1SKttKML0/img.png?width=300&amp;amp;height=488&amp;amp;face=0_0_300_488&quot;&gt;&lt;a href=&quot;https://geminiforwork.gwaddons.com/gemini-for-sheets/gemini-functions/all-available-functions&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://geminiforwork.gwaddons.com/gemini-for-sheets/gemini-functions/all-available-functions&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/47QoA/dJMb8QekO8s/K5Dgc9mDdzOSA1SKttKML0/img.png?width=300&amp;amp;height=488&amp;amp;face=0_0_300_488');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;All available functions | Gemini for Workspace | Gemini AI in Sheets &amp;amp; Docs&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Discover all available functions in Gemini for Sheets and Docs, along with simple examples and an extensive list of paramaters.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;geminiforwork.gwaddons.com:443&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고로 위 과정을 구글 Apps Script로 코딩해서 구현할 수도 있습니다. 구글 API 키가 필요합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1773475323305&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;const API_KEY = &quot;여기에_발급받은_GEMINI_API_키를_넣으세요&quot;; 

function GEMINI(prompt) {
  const url = &quot;https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=&quot; + API_KEY;
  
  const payload = {
    &quot;contents&quot;: [{
      &quot;parts&quot;: [{&quot;text&quot;: prompt}]
    }]
  };
  
  const options = {
    &quot;method&quot;: &quot;post&quot;,
    &quot;contentType&quot;: &quot;application/json&quot;,
    &quot;payload&quot;: JSON.stringify(payload)
  };
  
  try {
    const response = UrlFetchApp.fetch(url, options);
    const json = JSON.parse(response.getContentText());
    return json.candidates[0].content.parts[0].text.trim();
  } catch (e) {
    return &quot;Error: &quot; + e.toString();
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 다음 시트상에서 Gemini라는 함수를 사용할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어 =GEMINI(B2 &amp;amp; &quot; 단어를 사용한 짧은 예문 1개만 영어로 써줘&quot;) 라고 사용하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ChatGPT를 이용하는 Apps Script 예시 (테스트해보지 않음)&lt;/p&gt;
&lt;pre id=&quot;code_1773495664444&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;// 여기에 발급받은 OpenAI API 키를 입력하세요
const OPENAI_API_KEY = &quot;sk-여기에_본인의_API_키를_넣으세요&quot;; 

/**
 * 프롬프트를 기반으로 AI 이미지를 생성하고 URL을 반환합니다.
 * @param {string} prompt 이미지 생성 프롬프트
 * @return 이미지 URL
 * @customfunction
 */
function MAKE_IMAGE(prompt) {
  if (prompt == &quot;&quot;) return &quot;프롬프트를 입력하세요.&quot;;
  
  const url = &quot;https://api.openai.com/v1/images/generations&quot;;
  
  const payload = {
    &quot;model&quot;: &quot;dall-e-3&quot;, // 또는 비용 절감을 위해 &quot;dall-e-2&quot; 사용 가능
    &quot;prompt&quot;: prompt,
    &quot;n&quot;: 1,
    &quot;size&quot;: &quot;1024x1024&quot; // dall-e-2 사용 시 &quot;512x512&quot; 등으로 변경 가능
  };
  
  const options = {
    &quot;method&quot;: &quot;post&quot;,
    &quot;headers&quot;: {
      &quot;Authorization&quot;: &quot;Bearer &quot; + OPENAI_API_KEY,
      &quot;Content-Type&quot;: &quot;application/json&quot;
    },
    &quot;payload&quot;: JSON.stringify(payload),
    &quot;muteHttpExceptions&quot;: true
  };
  
  try {
    const response = UrlFetchApp.fetch(url, options);
    const json = JSON.parse(response.getContentText());
    
    if (json.error) {
      return &quot;에러: &quot; + json.error.message;
    }
    
    // 생성된 이미지의 임시 URL 반환
    return json.data[0].url;
  } catch (e) {
    return &quot;요청 실패: &quot; + e.toString();
  }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용방법:&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A1&amp;nbsp;셀:&amp;nbsp;귀여운&amp;nbsp;우주인&amp;nbsp;고양이&amp;nbsp;그림&amp;nbsp;그려줘&amp;nbsp;(프롬프트&amp;nbsp;입력)&lt;br /&gt;B1 셀: =IMAGE(MAKE_IMAGE(A1))&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고, AI 추가기능은 위처럼 ai명령 결과를 가져오기도 하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시트상에서 ai 에게 대신 여러가지 수식 작업을 시키는 것도 가능합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어 아래처럼 입사날짜만 들어 있을 때 프롬프트를 보내서 자동으로 수식을 만들어 근무경력을 계산하도록 할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_006.png&quot; data-origin-width=&quot;861&quot; data-origin-height=&quot;701&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DXhhn/dJMb99S9SSl/FZEabaEJCszJd9QLzgVt70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DXhhn/dJMb99S9SSl/FZEabaEJCszJd9QLzgVt70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DXhhn/dJMb99S9SSl/FZEabaEJCszJd9QLzgVt70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDXhhn%2FdJMb99S9SSl%2FFZEabaEJCszJd9QLzgVt70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;861&quot; height=&quot;701&quot; data-filename=&quot;Img_006.png&quot; data-origin-width=&quot;861&quot; data-origin-height=&quot;701&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이상 구글시트상에서 AI명령을 수식으로 호출해서 인공지능 계산 결과를 가져오는 방법을 알아보았습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞으로는 엑셀이나 구글시트에서도&amp;nbsp; AI를 적극적으로 활용하게 될 것입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럴수록 API KEY가 필요하므로 AI서비스에 대한 개인 유료 구독이나 단체 구독 등이 점점 필수가 될 것 같습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Open AI를 창립할 때 누구나 인공지능을 사용할 수 있게 하겠다는 취지로 설립했다고 했지만&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전기나 메모리, GPU 등의 자원은 무한하지 않고 한정되어 있는지라&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;점점 AI를 사용하기 위한 Token이 화폐 혹은 비슷한 기능을 할 수도 있을 것 같습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Token 보유량에 따른 AI 격차/계급화가 우려됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;unnamed1.jpg&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/X4b1H/dJMcadgXOfn/BlJkzKBh6nXiSjUQD7m5z1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/X4b1H/dJMcadgXOfn/BlJkzKBh6nXiSjUQD7m5z1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/X4b1H/dJMcadgXOfn/BlJkzKBh6nXiSjUQD7m5z1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FX4b1H%2FdJMcadgXOfn%2FBlJkzKBh6nXiSjUQD7m5z1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;634&quot; height=&quot;346&quot; data-filename=&quot;unnamed1.jpg&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Google &amp;amp; AI</category>
      <category>AI Function</category>
      <category>Direct AI Call in Spread Sheets</category>
      <category>gem</category>
      <category>GPT</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/347</guid>
      <comments>https://konahn.tistory.com/entry/AIFunctions#entry347comment</comments>
      <pubDate>Sat, 14 Mar 2026 22:42:58 +0900</pubDate>
    </item>
    <item>
      <title>실시간 도서 ISBN 코드로 재고 수량 조회</title>
      <link>https://konahn.tistory.com/entry/RealtimeStockInfo</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Gemini_Generated_Image_s9a012s9a012s9a0.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cYXDjz/dJMcabDnmWx/mnBTStxaykDNabWDjuvyEK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cYXDjz/dJMcabDnmWx/mnBTStxaykDNabWDjuvyEK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cYXDjz/dJMcabDnmWx/mnBTStxaykDNabWDjuvyEK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcYXDjz%2FdJMcabDnmWx%2FmnBTStxaykDNabWDjuvyEK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;413&quot; height=&quot;225&quot; data-filename=&quot;Gemini_Generated_Image_s9a012s9a012s9a0.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VBA를 이용해서 Http로 서점 서버에 접속해서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시트상에 나열된 ISBN 목록에 대해 각 지점의 재고현황 데이터를 JSON 형식으로 받아서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀 시트에 일괄로 정리하는 사례입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;120&quot; data-origin-height=&quot;44&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ecZlF5/dJMcag5KOCt/8qEeDWShFfOml0IriZL3P1/tfile.svg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ecZlF5/dJMcag5KOCt/8qEeDWShFfOml0IriZL3P1/tfile.svg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ecZlF5/dJMcag5KOCt/8qEeDWShFfOml0IriZL3P1/tfile.svg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FecZlF5%2FdJMcag5KOCt%2F8qEeDWShFfOml0IriZL3P1%2Ftfile.svg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;202&quot; height=&quot;74&quot; data-origin-width=&quot;120&quot; data-origin-height=&quot;44&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;교보문고의 사례입니다. 책 상세 페이지에서 '매장 재고. 위치'를 눌렀을 때 아래와 같이 조회됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_001.png&quot; data-origin-width=&quot;1189&quot; data-origin-height=&quot;708&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kXEMt/dJMcagdCxUB/lninmKqsj14loKT18BgwEk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kXEMt/dJMcagdCxUB/lninmKqsj14loKT18BgwEk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kXEMt/dJMcagdCxUB/lninmKqsj14loKT18BgwEk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkXEMt%2FdJMcagdCxUB%2FlninmKqsj14loKT18BgwEk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1189&quot; height=&quot;708&quot; data-filename=&quot;Img_001.png&quot; data-origin-width=&quot;1189&quot; data-origin-height=&quot;708&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;매장 재고 URL은 아래처럼&amp;nbsp; S000000610612&amp;nbsp; 같은 상품코드를 필요로 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://product.kyobobook.co.kr/api/gw/pdt/product/S000000610612/location-inventory&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://product.kyobobook.co.kr/api/gw/pdt/product/S000000610612/location-inventory&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내부 JSON 데이터상에서 saleCmdtid 라는 값인데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ISBN으로 검색하는 상황이므로 바로 상품코드로 조회할 수는 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최초에 13자리 ISBN (9788936434120)으로 검색했을 때 내부적인 상품코드인 S000000610612 라는 값을 구해야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;교보문고는 검색 Input 창에 ISBN 을 입력하면 실시간으로 도서 정보를 가져옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://search.kyobobook.co.kr/srp/api/v2/search/autocomplete/shop?keyword=9788936434120&quot;&gt;https://search.kyobobook.co.kr/srp/api/v2/search/autocomplete/shop?keyword=9788936434120&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 이렇게 실시간 검색 주소를 이용해서 Json(&quot;data&quot;)(&quot;resultDocuments&quot;)(0)(&quot;sale_CMDTID&quot;) 값을 구하거나&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_005.png&quot; data-origin-width=&quot;1152&quot; data-origin-height=&quot;585&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/blAT38/dJMcadVrlQm/dOisIDMTPeIkk6cL49YS30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/blAT38/dJMcadVrlQm/dOisIDMTPeIkk6cL49YS30/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/blAT38/dJMcadVrlQm/dOisIDMTPeIkk6cL49YS30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblAT38%2FdJMcadVrlQm%2FdOisIDMTPeIkk6cL49YS30%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1152&quot; height=&quot;585&quot; data-filename=&quot;Img_005.png&quot; data-origin-width=&quot;1152&quot; data-origin-height=&quot;585&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.kyobobook.co.kr/api/gw/aco/search/commodity?keyword=9788936434120&amp;amp;gbCode=TOT&amp;amp;page=1&quot;&gt;https://www.kyobobook.co.kr/api/gw/aco/search/commodity?keyword=9788936434120&amp;amp;gbCode=TOT&amp;amp;page=1&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또는 이렇게 검색해서 Json(&quot;data&quot;)(&quot;resultDocuments&quot;)(0)(&quot;sale_CMDTID&quot;) 값을 구하면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_006.png&quot; data-origin-width=&quot;1172&quot; data-origin-height=&quot;583&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bl5GZN/dJMcab4qBLz/LK6917Rm6vN6juHDdL2Jk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bl5GZN/dJMcab4qBLz/LK6917Rm6vN6juHDdL2Jk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bl5GZN/dJMcab4qBLz/LK6917Rm6vN6juHDdL2Jk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbl5GZN%2FdJMcab4qBLz%2FLK6917Rm6vN6juHDdL2Jk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1172&quot; height=&quot;583&quot; data-filename=&quot;Img_006.png&quot; data-origin-width=&quot;1172&quot; data-origin-height=&quot;583&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 간혹 1차 실시간 JSON 데이터로는 검색이 되지 않지만 결과가 넘어오는 경우가 있는데 그때는 HTML 문서에서 찾아와야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://search.kyobobook.co.kr/search?keyword=9788936434120&amp;amp;gbCode=TOT&amp;amp;target=total&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://search.kyobobook.co.kr/search?keyword=9788936434120&amp;amp;gbCode=TOT&amp;amp;target=total&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 처럼 접속해서 HTML 문서 상에 검색된 도서중에서 prod_item 목록 중 input 태그의 data-pid 속성값에 S000000610612 을 구할 수 있습니다. 물론 표지 이미지 파일명에서 가져올 수도 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;845&quot; data-origin-height=&quot;304&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ruhan/dJMcac93rPx/Ds1VoqBUYyyKq9t335fzt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ruhan/dJMcac93rPx/Ds1VoqBUYyyKq9t335fzt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ruhan/dJMcac93rPx/Ds1VoqBUYyyKq9t335fzt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fruhan%2FdJMcac93rPx%2FDs1VoqBUYyyKq9t335fzt0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;845&quot; height=&quot;304&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;845&quot; data-origin-height=&quot;304&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 최종적으로 &lt;a href=&quot;https://product.kyobobook.co.kr/api/gw/pdt/product/S000000610612/location-inventory&quot;&gt;https://product.kyobobook.co.kr/api/gw/pdt/product/S000000610612/location-inventory&lt;/a&gt; 이런 주소로 접속해서 매장별 재고 숫자를 가져옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;접속해서 받아온 JSON 데이터에서 Json(&quot;data&quot;)(&quot;list&quot;)의&amp;nbsp; 배열 데이터중에서 각 배열 데이터내의&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;strName 은 매장위치이고 realInvnQntt 는 재고 수량이 되겠습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_007.png&quot; data-origin-width=&quot;708&quot; data-origin-height=&quot;634&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ciE5f2/dJMcafFLXxY/yqK3rriiOk4FvtrnKcYKCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ciE5f2/dJMcafFLXxY/yqK3rriiOk4FvtrnKcYKCK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ciE5f2/dJMcafFLXxY/yqK3rriiOk4FvtrnKcYKCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FciE5f2%2FdJMcafFLXxY%2FyqK3rriiOk4FvtrnKcYKCK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;708&quot; height=&quot;634&quot; data-filename=&quot;Img_007.png&quot; data-origin-width=&quot;708&quot; data-origin-height=&quot;634&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 과정에 대한 VBA 코드는 아래와 같습니다.&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1772889784072&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Option Explicit

Dim http As Object  'New MSXML2.ServerXMLHTTP60
Dim html As New MSHTML.HTMLDocument '도구 &amp;gt; 참조 : Microsoft HTML Object Library 체크 필요
Dim Json As New JsonBag, itm As New JsonBag, lst As New JsonBag

Sub getKyobo()

    Dim sht As Worksheet
    Dim lastrow As Long, lastcol As Long, l As Long
    Dim rng As Range, irng As Range
    Dim ret As Long
    
    Set sht = ActiveSheet
    lastrow = sht.Cells(sht.Rows.Count, &quot;A&quot;).End(xlUp).Row
    If lastrow &amp;lt; 2 Then Exit Sub
    lastcol = sht.Cells(1, sht.Columns.Count).End(xlToLeft).Column
    If lastcol &amp;lt; 2 Then Exit Sub
    
    'Application.ScreenUpdating = False
    Set http = CreateObject(&quot;MSXML2.ServerXMLHttp&quot;)
    If html Is Nothing Then MsgBox &quot;Alt+F11창에서 도구&amp;gt;참조&amp;gt; Microsoft HTML Object Library에 체크하세요.&quot;: Exit Sub
    
    On Error Resume Next
    For Each rng In sht.Range(&quot;A2:A&quot; &amp;amp; lastrow)
        rng.NumberFormat = &quot;@&quot;
        If Not ValidateISBN(rng.Value) Then
            rng.Font.Color = rgbRed
        Else
            rng.Hyperlinks.Delete
            rng.Offset(, 1).Resize(1, lastcol).Clear
            Call getKyoBobooks(rng)
            l = l + 1
            Application.StatusBar = &quot;Processing : &quot; &amp;amp; l &amp;amp; &quot; / &quot; &amp;amp; lastrow - 1
            If l Mod 5 = 0 Then Application.Wait (Now + TimeSerial(0, 0, 1))
        End If
        rng.HorizontalAlignment = Excel.Constants.xlCenter
    Next rng
    Application.ScreenUpdating = True
    Set http = Nothing
    Set html = Nothing
    Application.StatusBar = False
End Sub

Private Sub test()
    Set http = CreateObject(&quot;MSXML2.ServerXMLHttp&quot;)
    Debug.Print getKyoBobooks(ActiveCell)
 
    Set http = Nothing
End Sub

Function getKyoBobooks(ISBN As Range) As Long
    
    Dim url As String, arr() As String
    Dim Loc As Range
    Dim oSht As Worksheet
    Dim lastcol As Integer, l As Integer, I As Integer
    Dim SaleCode As String, temp As String
    
    Set oSht = ISBN.Parent
    lastcol = oSht.Cells(1, oSht.Columns.Count).End(xlToLeft).Column
    
    'sale_CCMDTID
        'https://www.kyobobook.co.kr/api/gw/aco/search/commodity?keyword=9788954682152&amp;amp;gbCode=TOT&amp;amp;page=1
    '    {
    '    &quot;data&quot;: {
    '    &quot;returnCode&quot;: 1,
    '    &quot;errorMessage&quot;: null,
    '    &quot;resultDocuments&quot;: [
    '      {
    '        &quot;chrc_NAME&quot;: &quot;한강&quot;,
    '        &quot;sale_CMDT_DVSN_CODE&quot;: &quot;KOR&quot;,
    '        &quot;cmdtcode&quot;: &quot;9788954682152&quot;,
    '        &quot;pbcm_NAME&quot;: &quot;문학동네&quot;,
    '        &quot;sale_CMDT_PRCE&quot;: &quot;16800&quot;,
    '        &quot;img_URL&quot;: &quot;https://contents.kyobobook.co.kr/sih/fit-in/200x0/pdt/9788954682152.jpg&quot;,
    '        &quot;sale_CMDTID&quot;: &quot;S000000781116&quot;,
    '        &quot;cmdt_NAME&quot;: &quot;작별하지 않는다&quot;,
    '        &quot;score&quot;: &quot;102312&quot;,

    'URL = &quot;https://search.kyobobook.co.kr/srp/api/v1/search/autocomplete/shop?callback=autocompleteShop&amp;amp;keyword=&quot; &amp;amp; ISBN.Text
    url = &quot;https://www.kyobobook.co.kr/api/gw/aco/search/commodity?keyword=&quot; &amp;amp; ISBN.Text &amp;amp; &quot;&amp;amp;gbCode=TOT&amp;amp;page=1&quot;
    'URL = &quot;https://www.kyobobook.co.kr/api/gw/aco/search/commodity?keyword=&quot; &amp;amp; ISBN.Text &amp;amp; &quot;&amp;amp;gbCode=kyobo&amp;amp;page=1&quot;
    'Debug.Print URL
    
    With http
            .Open &quot;GET&quot;, url, False
            .setRequestHeader &quot;User-Agent&quot;, &quot;Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36&quot;       '&quot;Mobile&quot;
            '.setRequestHeader &quot;Content-Type&quot;, &quot;Application / javascript&quot;
            .send
            temp = .responseText
            Json.Json = temp
            'Debug.Print temp
    End With
    
    '검색되지 않은 경우 HTML 검색
    If Json(&quot;data&quot;)(&quot;resultDocuments&quot;).Count &amp;lt; 1 Then
        url = &quot;https://search.kyobobook.co.kr/search?keyword=&quot; &amp;amp; ISBN.Text &amp;amp; &quot;&amp;amp;gbCode=TOT&amp;amp;target=total&quot;
        With http
            .Open &quot;GET&quot;, url, False
            .setRequestHeader &quot;User-Agent&quot;, &quot;Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36&quot;       '&quot;Mobile&quot;
            '.setRequestHeader &quot;Content-Type&quot;, &quot;Application / javascript&quot;
            .send
            temp = .responseText
            html.body.innerHTML = temp
            'Debug.Print temp
        End With
        
        SaleCode = &quot;&quot;
        On Error Resume Next
        SaleCode = html.querySelector(&quot;.prod_item &amp;gt; span &amp;gt; input&quot;).getAttribute(&quot;data-pid&quot;)
        On Error GoTo 0
        'Debug.Print ISBN, SaleCode
        
        If Len(SaleCode) &amp;gt; 0 Then
            ISBN.Hyperlinks.Add ISBN, Address:=&quot;https://product.kyobobook.co.kr/detail/&quot; &amp;amp; SaleCode, ScreenTip:=&quot;▶ ISBN Found &amp;gt;&amp;gt; but no data&quot;
            ISBN.Font.Color = rgbBlue
        Else
            ISBN.Hyperlinks.Add ISBN, Address:=&quot;https://www.google.co.kr/search?hl=ko&amp;amp;tbo=p&amp;amp;tbm=bks&amp;amp;q=isbn:&quot; &amp;amp; ISBN, _
                ScreenTip:=&quot;▶ ISBN Not found&quot; &amp;amp; &quot; &amp;gt;&amp;gt; Search on Google&quot;
            ISBN.Font.Color = rgbDarkOrange
            'Debug.Print &quot;Not found : &quot; &amp;amp; ISBN.Text
            getKyoBobooks = -1: Exit Function
        End If
    Else
        SaleCode = Json(&quot;data&quot;)(&quot;resultDocuments&quot;)(1)(&quot;sale_CMDTID&quot;)
        'Debug.Print SaleCode
        '요약 문자열 분리
        temp = Json(&quot;data&quot;)(&quot;resultDocuments&quot;)(1)(&quot;cmdt_NAME&quot;)
        temp = temp &amp;amp; &quot;, &quot; &amp;amp; Json(&quot;data&quot;)(&quot;resultDocuments&quot;)(1)(&quot;chrc_NAME&quot;)
        temp = temp &amp;amp; &quot;, &quot; &amp;amp; Json(&quot;data&quot;)(&quot;resultDocuments&quot;)(1)(&quot;sale_CMDT_PRCE&quot;)
        ISBN.Hyperlinks.Add ISBN, Address:=&quot;https://product.kyobobook.co.kr/detail/&quot; &amp;amp; SaleCode, _
            ScreenTip:=temp
        
    End If
        
   
    
    url = &quot;https://product.kyobobook.co.kr/api/gw/pdt/product/&quot; &amp;amp; SaleCode &amp;amp; &quot;/location-inventory&quot;
   'Debug.Print URL
    With http
        .Open &quot;GET&quot;, url, False
        .setRequestHeader &quot;Accept&quot;, &quot;application/json, text/plain, */*&quot;
        .setRequestHeader &quot;Content-Type&quot;, &quot;application/json&quot;
        .setRequestHeader &quot;User-agent&quot;, &quot;Mozilla/5.0&quot;
        .send
        '{
        '    &quot;data&quot;: [
        '        {
        '            &quot;strAreaGrpCode&quot;: &quot;001&quot;,
        '            &quot;list&quot;: [
        '                {
        '                    &quot;barcode&quot;: &quot;9791169092753&quot;,
        '                    &quot;saleCmdtId&quot;: &quot;S000213845355&quot;,
        '                    &quot;saleCmdtGrpDvsnCode&quot;: &quot;SGK&quot;,
        '                    &quot;saleCmdtDvsnCode&quot;: &quot;KOR&quot;,
        '                    &quot;strRdpCode&quot;: &quot;001&quot;,
        '                    &quot;strName&quot;: &quot;광화문&quot;,
        '                    &quot;strAreaGrpCode&quot;: &quot;001&quot;,
        '                    &quot;strAdrs&quot;: &quot;서울특별시 종로구 종로 1, 교보생명빌딩 지하 1층&quot;,
        '                    &quot;strTlnm&quot;: &quot;02-397-3400&quot;,
        '                    &quot;realInvnQntt&quot;: 85,
        '                    &quot;dlvrRqrmDyCont&quot;: 0,
        '                    &quot;plorRqrmDyCont&quot;: 0
        '                },
         Json.Json = .responseText
    End With
    
    If Json(&quot;data&quot;).Count = 0 Then getKyoBobooks = -1: Exit Function

    'Debug.Print Json.Json
    '처음인 경우 지점 목록 출력
    If ISBN.Row = 2 Then
        For Each lst In Json(&quot;data&quot;)
            For Each itm In lst(&quot;list&quot;)
                I = I + 1
                oSht.Range(&quot;A1&quot;).Offset(, I) = itm(&quot;strName&quot;)
            Next itm
        Next lst
        lastcol = oSht.Cells(1, oSht.Columns.Count).End(xlToLeft).Column
    End If
    
    '지점별 검색
    For Each Loc In oSht.Range(&quot;B1&quot;, oSht.Cells(1, lastcol))
        For Each lst In Json(&quot;data&quot;)
            For Each itm In lst(&quot;list&quot;)
                If itm(&quot;strName&quot;) = Loc Then
                    oSht.Cells(ISBN.Row, Loc.Column) = itm(&quot;realInvnQntt&quot;) '지점이름과 같으면 재고 현황 입력
                End If
            Next itm
        Next lst
    Next Loc

    
End Function&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래와 같이 주어진 ISBN 코드에 대한 각 매장별 재고 수량을 조회할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;1053&quot; data-origin-height=&quot;454&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bHEK7A/dJMcafTi9e6/rskr5DFCOoXHar8Nau5kDk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bHEK7A/dJMcafTi9e6/rskr5DFCOoXHar8Nau5kDk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bHEK7A/dJMcafTi9e6/rskr5DFCOoXHar8Nau5kDk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbHEK7A%2FdJMcafTi9e6%2Frskr5DFCOoXHar8Nau5kDk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1053&quot; height=&quot;454&quot; data-filename=&quot;Img_008.png&quot; data-origin-width=&quot;1053&quot; data-origin-height=&quot;454&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서버에 부담을 줄이기 위해 몇초마다 대기 시간을 주는 것이 좋겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대량의 도서에 대한 검색은 정식 API를 이용해서 검색하거나 매장의 검색 시스템을 이용하는 것을 권장합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;676&quot; data-origin-height=&quot;156&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/N2k15/dJMcacPOvc3/xySqgSKScq5vxn8qHbNXv1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/N2k15/dJMcacPOvc3/xySqgSKScq5vxn8qHbNXv1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/N2k15/dJMcacPOvc3/xySqgSKScq5vxn8qHbNXv1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FN2k15%2FdJMcacPOvc3%2FxySqgSKScq5vxn8qHbNXv1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;316&quot; height=&quot;73&quot; data-origin-width=&quot;676&quot; data-origin-height=&quot;156&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번에는 영풍문고 사례입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ISBN 검색해서 상세 페이지로 이동 후 '매장 재고 및 위치 확인'을 눌러서 확인 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_009.png&quot; data-origin-width=&quot;1322&quot; data-origin-height=&quot;908&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7S9Yg/dJMcah4ETok/jjnPSOwsczgoICZ9IBQzuK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7S9Yg/dJMcah4ETok/jjnPSOwsczgoICZ9IBQzuK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7S9Yg/dJMcah4ETok/jjnPSOwsczgoICZ9IBQzuK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7S9Yg%2FdJMcah4ETok%2FjjnPSOwsczgoICZ9IBQzuK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1322&quot; height=&quot;908&quot; data-filename=&quot;Img_009.png&quot; data-origin-width=&quot;1322&quot; data-origin-height=&quot;908&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.ypbooks.co.kr/back_shop/base_shop/api/v1/product/stock-info?iBookCd=100507073&amp;amp;iNorPrc=15000&amp;amp;iGubun=n&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.ypbooks.co.kr/back_shop/base_shop/api/v1/product/stock-info?iBookCd=100507073&amp;amp;iNorPrc=15000&amp;amp;iGubun=n&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 JSON 데이터를 받아와야 하는데 iBookCd 값과 iNorPrc 가격 값이 필요합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내부적인 상품코드가 필요합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영풍문고도 검색 Input 란에 ISBN을 입력할 때 실시간으로 아래와 같은 도서 정보를 불러옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.ypbooks.co.kr/back_shop/base_shop/api/v1/search_indexes/result/product?type=product&amp;amp;collection=yp_product&amp;amp;nationType=korea%2Cjapan%2Cwestern%2Cstationerygift&amp;amp;query=9788936434120&amp;amp;listCount=3&amp;amp;pageNumber=1&amp;amp;startDate=1970.01.02&amp;amp;endType=1%2C2%2C3%2C4%2C5%2C7&amp;amp;autoDiv=true&amp;amp;searchType=ON&amp;amp;target=ark&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.ypbooks.co.kr/back_shop/base_shop/api/v1/search_indexes/result/product?type=product&amp;amp;collection=yp_product&amp;amp;nationType=korea%2Cjapan%2Cwestern%2Cstationerygift&amp;amp;query=9788936434120&amp;amp;listCount=3&amp;amp;pageNumber=1&amp;amp;startDate=1970.01.02&amp;amp;endType=1%2C2%2C3%2C4%2C5%2C7&amp;amp;autoDiv=true&amp;amp;searchType=ON&amp;amp;target=ark&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 위 주소로 그냥 접속하면 아래처럼 JSON데이터가 돌아오지 않고 JSON 데이터 속에는 FAIL 값만 돌아옵니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_012.png&quot; data-origin-width=&quot;798&quot; data-origin-height=&quot;402&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sprkf/dJMcaaR1bpR/IOVQdhIwsDKibXCsiEy54k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sprkf/dJMcaaR1bpR/IOVQdhIwsDKibXCsiEy54k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sprkf/dJMcaaR1bpR/IOVQdhIwsDKibXCsiEy54k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fsprkf%2FdJMcaaR1bpR%2FIOVQdhIwsDKibXCsiEy54k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;798&quot; height=&quot;402&quot; data-filename=&quot;Img_012.png&quot; data-origin-width=&quot;798&quot; data-origin-height=&quot;402&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좀 더 살펴보니 접속할 때 Guestaccesstoken 이라는 값이 없는 경우 FAIL 값을 돌려주고 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_014.png&quot; data-origin-width=&quot;1246&quot; data-origin-height=&quot;602&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/daasOn/dJMcagq8iqx/KnaR3tyQ1AsUKbsVLaMKWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/daasOn/dJMcagq8iqx/KnaR3tyQ1AsUKbsVLaMKWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/daasOn/dJMcagq8iqx/KnaR3tyQ1AsUKbsVLaMKWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdaasOn%2FdJMcagq8iqx%2FKnaR3tyQ1AsUKbsVLaMKWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1246&quot; height=&quot;602&quot; data-filename=&quot;Img_014.png&quot; data-origin-width=&quot;1246&quot; data-origin-height=&quot;602&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단은 VBA에서 HTTP 접속할 때 RequestHeader 에 넣어주면 되는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저 값은 접속하는 세션과 시간에 따라 달라집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다행히 모바일로 접속할 때 AccessToken 값을 구할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #60911b; text-align: left;&quot;&gt;&lt;a href=&quot;https://m.ypbooks.co.kr/back_login/base_login/api/v1/auth/login-guest&quot;&gt;https://m.ypbooks.co.kr/back_login/base_login/api/v1/auth/login-guest&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_015.png&quot; data-origin-width=&quot;1258&quot; data-origin-height=&quot;287&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cRmhpR/dJMcadHUgbR/quMFP3SfkhMavs5tQ1Tdb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cRmhpR/dJMcadHUgbR/quMFP3SfkhMavs5tQ1Tdb0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cRmhpR/dJMcadHUgbR/quMFP3SfkhMavs5tQ1Tdb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcRmhpR%2FdJMcadHUgbR%2FquMFP3SfkhMavs5tQ1Tdb0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1258&quot; height=&quot;287&quot; data-filename=&quot;Img_015.png&quot; data-origin-width=&quot;1258&quot; data-origin-height=&quot;287&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 login-guest로 접속해서 돌아온 JSON 데이터에서 Json(&quot;data&quot;)(&quot;accessToken&quot;) 값으로 토큰 값을 구한 다음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.ypbooks.co.kr/back_shop/base_shop/api/v1/search_indexes/result/product?type=product&amp;amp;collection=yp_product&amp;amp;nationType=korea%2Cjapan%2Cwestern%2Cstationerygift&amp;amp;query=978893643412&quot;&gt;https://www.ypbooks.co.kr/back_shop/base_shop/api/v1/search_indexes/result/product?type=product&amp;amp;collection=yp_product&amp;amp;nationType=korea%2Cjapan%2Cwestern%2Cstationerygift&amp;amp;query=978893643412&lt;/a&gt;~~~ 로 접속할 때 RequestHeader 의 Guestaccesstoken 값과 함께 접속합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_017.png&quot; data-origin-width=&quot;1111&quot; data-origin-height=&quot;611&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2SRTd/dJMcacWyHt8/HFqtiA4NkYfApdzsCIPwLK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2SRTd/dJMcacWyHt8/HFqtiA4NkYfApdzsCIPwLK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2SRTd/dJMcacWyHt8/HFqtiA4NkYfApdzsCIPwLK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2SRTd%2FdJMcacWyHt8%2FHFqtiA4NkYfApdzsCIPwLK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1111&quot; height=&quot;611&quot; data-filename=&quot;Img_017.png&quot; data-origin-width=&quot;1111&quot; data-origin-height=&quot;611&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Json(&quot;data&quot;)(&quot;ypProductResult&quot;)(&quot;dataList&quot;) 의 첫번째 배열값에서 &quot;bookCd&quot; 값이나 ProductIdCd 값으로 부터 100507073 이라는 내부 상품코드를 구할 수 있습니다. productPrice 값에서 가격을 알 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 매장별 재고를 알아내기 위해 다음 주소로 접속합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://m.ypbooks.co.kr/back_shop/base_shop/api/v1/product/stock-info?iBookCd=100507073&amp;amp;iNorPrc=15000&amp;amp;iGubun=y&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://m.ypbooks.co.kr/back_shop/base_shop/api/v1/product/stock-info?iBookCd=100507073&amp;amp;iNorPrc=15000&amp;amp;iGubun=y&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_011.png&quot; data-origin-width=&quot;1129&quot; data-origin-height=&quot;526&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2vRYY/dJMcagdCzFW/H5dSLip7DIz8ZRijQnZ2B0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2vRYY/dJMcagdCzFW/H5dSLip7DIz8ZRijQnZ2B0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2vRYY/dJMcagdCzFW/H5dSLip7DIz8ZRijQnZ2B0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2vRYY%2FdJMcagdCzFW%2FH5dSLip7DIz8ZRijQnZ2B0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1129&quot; height=&quot;526&quot; data-filename=&quot;Img_011.png&quot; data-origin-width=&quot;1129&quot; data-origin-height=&quot;526&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Json(&quot;data&quot;) 의 각 배열 속의 &quot;labst&quot; 값에서 매장별 재고 수량을 가져옵니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_018.png&quot; data-origin-width=&quot;913&quot; data-origin-height=&quot;561&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/s5dvG/dJMcajnM9c1/srXFuvyT0tI87KtXNk6k01/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/s5dvG/dJMcajnM9c1/srXFuvyT0tI87KtXNk6k01/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/s5dvG/dJMcajnM9c1/srXFuvyT0tI87KtXNk6k01/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fs5dvG%2FdJMcajnM9c1%2FsrXFuvyT0tI87KtXNk6k01%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;913&quot; height=&quot;561&quot; data-filename=&quot;Img_018.png&quot; data-origin-width=&quot;913&quot; data-origin-height=&quot;561&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 그림처럼 주어진 ISBN 코드로 검색해서 매장별 수량을 일괄로 파악할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_019.png&quot; data-origin-width=&quot;1055&quot; data-origin-height=&quot;559&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lz9FG/dJMcaaqVP0q/pYAmFEGdZZORxjxIORowsK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lz9FG/dJMcaaqVP0q/pYAmFEGdZZORxjxIORowsK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lz9FG/dJMcaaqVP0q/pYAmFEGdZZORxjxIORowsK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Flz9FG%2FdJMcaaqVP0q%2FpYAmFEGdZZORxjxIORowsK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1055&quot; height=&quot;559&quot; data-filename=&quot;Img_019.png&quot; data-origin-width=&quot;1055&quot; data-origin-height=&quot;559&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영풍문고 검색 VBA코드는 아래와 같습니다.&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1772893445282&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Option Explicit

Dim http As Object  'New MSXML2.ServerXMLHTTP60
Dim Json As New JsonBag, itm As New JsonBag
Dim sToken As String

Sub getYP()

    Dim sht As Worksheet
    Dim lastrow As Long, lastcol As Long, l As Long
    Dim rng As Range, irng As Range
    Dim ret As Long
    
    Set sht = ActiveSheet
    lastrow = sht.Cells(sht.Rows.Count, &quot;A&quot;).End(xlUp).Row
    If lastrow &amp;lt; 2 Then Exit Sub
    lastcol = sht.Cells(1, sht.Columns.Count).End(xlToLeft).Column
    If lastcol &amp;lt; 2 Then Exit Sub
    
    'Application.ScreenUpdating = False
    Set http = CreateObject(&quot;MSXML2.XMLHttp&quot;)
    sToken = getToken
    If sToken = &quot;&quot; Then MsgBox &quot;Getting GuestAccessToken Failed&quot;: Exit Sub
    
    On Error Resume Next
    For Each rng In sht.Range(&quot;A2:A&quot; &amp;amp; lastrow)
        'If Len(Trim(rng.Text)) = 13 Then
        rng.Hyperlinks.Delete
        rng.Offset(, 1).Resize(1, lastcol).Clear
        Call getYPbooks(rng)
        l = l + 1
        Application.StatusBar = &quot;Processing : &quot; &amp;amp; l &amp;amp; &quot; / &quot; &amp;amp; lastrow
        If l Mod 5 = 0 Then Application.Wait (Now + TimeSerial(0, 0, 1))
        'End If
    Next rng
    Application.ScreenUpdating = True
    Set http = Nothing
    Application.StatusBar = False
End Sub

Private Sub test()
    Set http = CreateObject(&quot;MSXML2.ServerXMLHttp&quot;)
    Debug.Print getYPbooks(Range(&quot;A5&quot;))
 
    Set http = Nothing
End Sub

Function getYPbooks(ISBN As Range) As Long
    
    Dim url As String, bookUrl As String, bookCd As String, price As String
    Dim Loc As Range
    Dim oSht As Worksheet
    Dim lastcol As Integer, I As Integer
  
    Set oSht = ISBN.Parent
    lastcol = oSht.Cells(1, oSht.Columns.Count).End(xlToLeft).Column
    
    'https://m.ypbooks.co.kr/back_shop/base_shop/api/v1/search_indexes/result/product?type=product&amp;amp;collection=yp_product&amp;amp;introSearchField=&amp;amp;listCount=10&amp;amp;pageNumber=1&amp;amp;query=9788972918349&amp;amp;reQuery=&amp;amp;sort=RANK&amp;amp;sortOrder=DESC&amp;amp;startDate=1970.01.02&amp;amp;endDate=&amp;amp;themeType=ALL&amp;amp;rtField=&amp;amp;avgValuation=
    url = &quot;https://m.ypbooks.co.kr/back_shop/base_shop/api/v1/search_indexes/result/product?type=product&amp;amp;collection=yp_product&amp;amp;listCount=10&amp;amp;pageNumber=1&amp;amp;query=&quot; &amp;amp; Trim(ISBN.Text)
    With http
        'Debug.Print URL
        .Open &quot;GET&quot;, url, False
        .setRequestHeader &quot;Accept&quot;, &quot;application/json, text/plain, */*&quot;
        .setRequestHeader &quot;Content-Type&quot;, &quot;application/json&quot;
        .setRequestHeader &quot;User-agent&quot;, &quot;Mozilla/5.0&quot;
        .setRequestHeader &quot;Guestaccesstoken&quot;, sToken '&quot;30695cefcc1d8e05be56f8ee511218e1&quot;
        .send
        
        Json.Json = .responseText
        'Debug.Print Json.Json
        '  &quot;state&quot;: &quot;SUCCESS&quot;,
        '  &quot;stateCode&quot;: 200,
        '  &quot;data&quot;: {
        '  &quot;ypProductResult&quot;: {
        '      &quot;count&quot;: 1,
        '      &quot;totalCount&quot;: 1,
        '      &quot;dataList&quot;: [
        '        {
        '          &quot;docid&quot;: &quot;202406106586248084&quot;,
        '          &quot;cdCtgyNm&quot;: [
        '            &quot;인문&quot;,
        '            &quot;세계역사/지리&quot;
        '          ],
        '          &quot;salePrice&quot;: 19800,
        '          &quot;recoValuation&quot;: 14213,
        '          &quot;productCd&quot;: &quot;202406106586248084&quot;,
        '          &quot;productIdCd&quot;: &quot;9788972918349&quot;,
        '          &quot;productName&quot;: &quot;노마드 - 문명을 가로지른 방랑자들 유목민이 만든 절반의 역사&quot;,
        '          &quot;writerName&quot;: [
        '            &quot;앤서니 새틴&quot;
        '          ],
        '          &quot;translatorName&quot;: [
        '            &quot;이순호&quot;
        '          ],
        '          &quot;pubCompanyName&quot;: &quot;까치글방&quot;,
        '          &quot;productPrice&quot;: &quot;22000&quot;,
        '          &quot;categoryIds&quot;: [
        '            &quot;659&quot;
        '          ],
        '          &quot;productReviewCount&quot;: &quot;0&quot;,
        '          &quot;bookImgPath&quot;: &quot;/image/product/202406&quot;,
        '          &quot;keywords&quot;: &quot;[\&quot;유목민\&quot;,\&quot;세계사\&quot;,\&quot;인류사\&quot;,\&quot;유전자\&quot;,\&quot;역사\&quot;,\&quot;방랑자\&quot;]&quot;,
        '          &quot;clickCnt&quot;: &quot;1149&quot;,
        '          &quot;bookImgName&quot;: &quot;0622cfd1-1de7-46aa-a976-d4790e946d5c.jpg&quot;,
        '{&quot;state&quot;:&quot;SUCCESS&quot;,&quot;stateCode&quot;:200,&quot;msg&quot;:null,
        '&quot;data&quot;:{&quot;message&quot;:null,&quot;retCode&quot;:0,&quot;totalCount&quot;:0,&quot;searchRequest&quot;:
        '{&quot;reQuery&quot;:&quot;&quot;,&quot;rtfield&quot;:null,&quot;endDate&quot;:&quot;2029.07.07&quot;,&quot;message&quot;:&quot;&quot;,&quot;query&quot;:&quot;9788954737517&quot;,&quot;collection&quot;:&quot;yp_product&quot;,&quot;listCount&quot;:10,&quot;pageNumber&quot;:1,&quot;startDate&quot;:&quot;1970.01.01&quot;,&quot;sort&quot;:&quot;RANK&quot;,&quot;sortOrder&quot;:&quot;DESC&quot;,&quot;nationType&quot;:&quot;&quot;,&quot;cateCode&quot;:&quot;&quot;,&quot;themeType&quot;:&quot;&quot;,&quot;prefix&quot;:&quot;&quot;,&quot;startPrice&quot;:-1,&quot;endPrice&quot;:-1,&quot;introSearchField&quot;:&quot;&quot;,&quot;revValuation&quot;:-1,&quot;eventStatus&quot;:&quot;&quot;,&quot;success&quot;:true,&quot;productPrice&quot;:&quot;&quot;,&quot;endType&quot;:&quot;-1&quot;},&quot;ypProductResult&quot;:{&quot;count&quot;:0,&quot;totalCount&quot;:0,&quot;dataList&quot;:[],&quot;categoryList&quot;:[],&quot;nationList&quot;:[{&quot;nationName&quot;:&quot;korea&quot;,&quot;nationCount&quot;:0},{&quot;nationName&quot;:&quot;japan&quot;,&quot;nationCount&quot;:0},{&quot;nationName&quot;:&quot;western&quot;,&quot;nationCount&quot;:0}],&quot;categoryAllList&quot;:[],&quot;arkList&quot;:null,&quot;deliveryConditionList&quot;:null},&quot;ypProductIntroResult&quot;:null,&quot;ypProductReviewResult&quot;:null,&quot;ypThemeResult&quot;:null,&quot;ypEventResult&quot;:null,&quot;ypFaqResult&quot;:null},&quot;confirm&quot;:false}

        
        'If Json(&quot;state&quot;) Like &quot;FAIL&quot; Then getYPbooks = -1: Exit Function
        If Json(&quot;data&quot;)(&quot;ypProductResult&quot;)(&quot;totalCount&quot;) &amp;lt; 1 Then
            Debug.Print &quot;Result 0 : &quot; &amp;amp; ISBN.Text
            getYPbooks = -1: Exit Function
        End If
        
        Set itm = Json(&quot;data&quot;)(&quot;ypProductResult&quot;)(&quot;dataList&quot;)(1)
        bookUrl = &quot;https://m.ypbooks.co.kr/bookDetail/&quot; &amp;amp; itm(&quot;productCd&quot;)
        ISBN.Hyperlinks.Add ISBN, bookUrl, , itm(&quot;productName&quot;) &amp;amp; vbNewLine &amp;amp; itm(&quot;writerName&quot;)(1) &amp;amp; vbNewLine &amp;amp; Format(itm(&quot;salePrice&quot;), &quot;###,###,##0&quot;)
        bookCd = itm(&quot;bookCd&quot;)
        price = itm(&quot;productPrice&quot;)
        If bookCd = &quot;&quot; Or price = &quot;&quot; Then getYPbooks = -1: Exit Function
    End With
    
    'Debug.Print bookCd, price
    'https://m.ypbooks.co.kr/back_shop/base_shop/api/v1/product/stock-info?iBookCd=101298565&amp;amp;iNorPrc=22000&amp;amp;iGubun=y
    url = &quot;https://m.ypbooks.co.kr/back_shop/base_shop/api/v1/product/stock-info?iBookCd=&quot; &amp;amp; bookCd &amp;amp; &quot;&amp;amp;iNorPrc=&quot; &amp;amp; price &amp;amp; &quot;&amp;amp;iGubun=y&quot;
    'Debug.Print URL
    With http
        .Open &quot;GET&quot;, url, False
        .setRequestHeader &quot;Accept&quot;, &quot;application/json, text/plain, */*&quot;
        .setRequestHeader &quot;Content-Type&quot;, &quot;application/json&quot;
        .setRequestHeader &quot;User-agent&quot;, &quot;Mozilla/5.0&quot;
        .send
        '{
        '    &quot;state&quot;: &quot;SUCCESS&quot;,
        '    &quot;stateCode&quot;: 200,
        '    &quot;msg&quot;: null,
        '    &quot;data&quot;: [
        '        {
        '            &quot;werks&quot;: &quot;4900&quot;,
        '            &quot;werksNm&quot;: &quot;가산마리오&quot;,
        '            &quot;labst&quot;: 1,
        '            &quot;regio&quot;: &quot;&quot;,
        '            &quot;rezei&quot;: &quot;&quot;,
        '            &quot;zsort&quot;: &quot;&quot;
        '        },
        Json.Json = .responseText
    End With
    
    If Json(&quot;state&quot;) Like &quot;FAIL&quot; Then getYPbooks = -1: Exit Function

    'Debug.Print Json.Json
    '각 지점 data 순환
    For Each itm In Json(&quot;data&quot;)
        'Debug.Print itm(&quot;werksNm&quot;) &amp;amp; &quot;,&quot;;
        '지점별 검색
        For Each Loc In oSht.Range(&quot;B1&quot;, oSht.Cells(1, lastcol))
            If itm(&quot;werksNm&quot;) = Loc Then
                oSht.Cells(ISBN.Row, Loc.Column) = itm(&quot;labst&quot;) '지점이름과 같으면 재고 현황 입력
            End If
        Next Loc
    Next itm
    ISBN.HorizontalAlignment = xlCenter
End Function

Function getToken() As String
 

    Dim http As Object
    Dim cookie As String
    
    Set http = CreateObject(&quot;MSXML2.ServerXMLHTTP&quot;)

    With http
        .Open &quot;PUT&quot;, &quot;https://m.ypbooks.co.kr/back_login/base_login/api/v1/auth/login-guest&quot;, False
        .setRequestHeader &quot;Accept&quot;, &quot;application/json, text/plain, */*&quot;
        .setRequestHeader &quot;Referer&quot;, &quot;https://m.ypbooks.co.kr/search_result&quot;
        .setRequestHeader &quot;User-agent&quot;, &quot;Mozilla/5.0&quot;
        .send
        
        'Application.Wait Now + TimeSerial(0, 0, 1)
        'cookie = .getResponseHeader(&quot;Set-Cookie&quot;)
        'Debug.Print .getAllResponseHeaders
        Json.Json = .responseText
        
        If Json(&quot;state&quot;) Like &quot;FAIL&quot; Then Exit Function
        getToken = Json(&quot;data&quot;)(&quot;accessToken&quot;)
        
    End With
    'Set http = Nothing
End Function&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마찬가지로 서버에 부담을 줄이기 위해 몇초마다 대기 시간을 주는 것이 좋겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 대량의 도서에 대한 검색은 정식 API를 이용해서 검색하거나 매장의 검색 시스템을 이용하는 것을 권장합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;샘플 파일을 첨부합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;무분별한 사용을 방지하기 위해 VBA코드에는 암호가 걸려 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/duijDf/dJMcah4EUdH/dscY8x5lDCQtzrkfkedszK/%EA%B5%90%EB%B3%B4%EC%98%81%ED%92%8D%EB%93%B1_%EC%9E%AC%EA%B3%A0%EA%B2%80%EC%83%891.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;교보영풍등_재고검색1.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.14MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Gemini_Generated_Image_h9zv1gh9zv1gh9zv.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/RRQDk/dJMcaf6PkwM/n0xr4ok4DaLOg95495Ckk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/RRQDk/dJMcaf6PkwM/n0xr4ok4DaLOg95495Ckk1/img.png&quot; data-alt=&quot;Picture generated by Gemini&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/RRQDk/dJMcaf6PkwM/n0xr4ok4DaLOg95495Ckk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRRQDk%2FdJMcaf6PkwM%2Fn0xr4ok4DaLOg95495Ckk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;633&quot; height=&quot;345&quot; data-filename=&quot;Gemini_Generated_Image_h9zv1gh9zv1gh9zv.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Picture generated by Gemini&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>XLS+VBA</category>
      <category>HTTP</category>
      <category>JSON</category>
      <category>StockInfo</category>
      <category>교보</category>
      <category>도서 검색</category>
      <category>영풍</category>
      <category>재고 조회</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/346</guid>
      <comments>https://konahn.tistory.com/entry/RealtimeStockInfo#entry346comment</comments>
      <pubDate>Sat, 7 Mar 2026 23:32:46 +0900</pubDate>
    </item>
    <item>
      <title>멜론 노래 정보 가져와서 음악파일명 일괄 변경하기</title>
      <link>https://konahn.tistory.com/entry/MelonRename</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Gemini_Generated_Image_wrw93cwrw93cwrw9.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cSwfPG/dJMcaa5tvSA/1wH1fq2Leb0jjUQttu3xq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cSwfPG/dJMcaa5tvSA/1wH1fq2Leb0jjUQttu3xq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cSwfPG/dJMcaa5tvSA/1wH1fq2Leb0jjUQttu3xq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcSwfPG%2FdJMcaa5tvSA%2F1wH1fq2Leb0jjUQttu3xq1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;590&quot; height=&quot;322&quot; data-filename=&quot;Gemini_Generated_Image_wrw93cwrw93cwrw9.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;관련: &lt;a href=&quot;https://konahn.tistory.com/entry/DAUMNews&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://konahn.tistory.com/entry/DAUMNews&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1772435568513&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;QuerySelector를 이용한 다음(DAUM) 뉴스 검색&quot; data-og-description=&quot;모바일 다음에서 뉴스기사를 검색하면 아래와 같은 URL로 접속됩니다.https://m.search.daum.net/search?w=news&amp;amp;q=인공지능최대한 간단히 줄인 주소입니다.PC웹에서 검색해도 비슷한데 효율성을 위해서 모바&quot; data-og-host=&quot;konahn.tistory.com&quot; data-og-source-url=&quot;https://konahn.tistory.com/entry/DAUMNews&quot; data-og-url=&quot;https://konahn.tistory.com/entry/DAUMNews&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bGe9jw/dJMb8T9WXEZ/5OwgA7T6KxbdeRI1bzCKzk/img.png?width=800&amp;amp;height=439&amp;amp;face=536_232_563_262,https://scrap.kakaocdn.net/dn/brN0nu/dJMb8RjZreY/xeKKDKLN4GDzf4akWJkY40/img.png?width=800&amp;amp;height=439&amp;amp;face=536_232_563_262,https://scrap.kakaocdn.net/dn/btL1Sb/dJMb8T9WXE0/KJQi8GkhLsTkmdp3m8s7NK/img.png?width=1940&amp;amp;height=1004&amp;amp;face=1306_709_1375_893&quot;&gt;&lt;a href=&quot;https://konahn.tistory.com/entry/DAUMNews&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://konahn.tistory.com/entry/DAUMNews&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bGe9jw/dJMb8T9WXEZ/5OwgA7T6KxbdeRI1bzCKzk/img.png?width=800&amp;amp;height=439&amp;amp;face=536_232_563_262,https://scrap.kakaocdn.net/dn/brN0nu/dJMb8RjZreY/xeKKDKLN4GDzf4akWJkY40/img.png?width=800&amp;amp;height=439&amp;amp;face=536_232_563_262,https://scrap.kakaocdn.net/dn/btL1Sb/dJMb8T9WXE0/KJQi8GkhLsTkmdp3m8s7NK/img.png?width=1940&amp;amp;height=1004&amp;amp;face=1306_709_1375_893');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;QuerySelector를 이용한 다음(DAUM) 뉴스 검색&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;모바일 다음에서 뉴스기사를 검색하면 아래와 같은 URL로 접속됩니다.https://m.search.daum.net/search?w=news&amp;amp;q=인공지능최대한 간단히 줄인 주소입니다.PC웹에서 검색해도 비슷한데 효율성을 위해서 모바&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;konahn.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번에는 멜론 사이트의 노래 순위, 제목, 가수, 앨범 아트 정보를 가져옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 상황은 미리 멜론, 벅스, 스포티파이 등 음악사이트에서 다운 받아놓은 mp3 등의 파일의 파일명을&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 원하는 스타일로 일괄로 바꾸고 싶은 경우입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;001.mp3&amp;nbsp; ▶️▶️ 001. IVE (아이브) - BANG BANG.mp3&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같이 바꾸고 싶습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_012.png&quot; data-origin-width=&quot;1039&quot; data-origin-height=&quot;715&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lrHUs/dJMcabpNR8E/V59sUJGIwkcYPsQdsgw210/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lrHUs/dJMcabpNR8E/V59sUJGIwkcYPsQdsgw210/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lrHUs/dJMcabpNR8E/V59sUJGIwkcYPsQdsgw210/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlrHUs%2FdJMcabpNR8E%2FV59sUJGIwkcYPsQdsgw210%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1039&quot; height=&quot;715&quot; data-filename=&quot;Img_012.png&quot; data-origin-width=&quot;1039&quot; data-origin-height=&quot;715&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 두개가 아니라 100여곡이 된다면 일일이 바꾸는 것이 만만치 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;멜론 사이트에서 곡 정보를 받아와서 엑셀에 정리하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난 번 파일명 변경 매크로로 일괄 변경하는 것이 목표입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;멜론의 곡 순위는 아래와 같은 주소에서 가져올 수 있습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1772435912988&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;    ' url = &quot;https://www.melon.com/chart/search/list.htm?chartType=WE&amp;amp;age=2020&amp;amp;year=2026&amp;amp;mon=01&amp;amp;day=20260126%5E20260201&amp;amp;classCd=GN0000&amp;amp;startDay=20260126&amp;amp;endDay=20260201&amp;amp;moved=Y&quot;
    ' url = &quot;https://www.melon.com/chart/week/index.htm?classCd=GN0000&amp;amp;moved=Y&amp;amp;startDay=20260126&amp;amp;endDay=20260201&quot;
     'url = &quot;https://www.melon.com/chart/week/index.htm?classCd=DM0000&amp;amp;moved=Y&amp;amp;startDay=20260126&amp;amp;endDay=20260201&quot;
    ' url = &quot;https://www.melon.com/chart/day/index.htm?classCd=GN0000&quot;
    ' url = &quot;https://www.melon.com/chart/search/list.htm?chartType=WE&amp;amp;classCd=GN0000&amp;amp;startDay=20260126&amp;amp;endDay=20260201&amp;amp;moved=Y&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;index.htm은 TOP100 등의 순위를 가져오고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;차트 파인더로 과거 정보를 검색해 올 때는 list.htm 으로 가져옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;list.htm 은 단순히 테이블 형태의 자료입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;50위까지는 보이는데 나머지 50개는 display:none 으로 숨긴 채로 가져옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서는 일간 TOP100 을 기준으로 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;노래 한 곡의 정보는 Class 이름이 lst50 이거나 lst100 이라는 TR 요소 안에 들어 있습니다.&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1772436279779&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;tr class=&quot;lst50&quot; id=&quot;lst50&quot;  data-song-no=&quot;601237102&quot;&amp;gt;

	&amp;lt;td&amp;gt;&amp;lt;div class=&quot;wrap t_right&quot;&amp;gt;&amp;lt;input type=&quot;checkbox&quot; title=&quot;BANG BANG 곡 선택&quot; class=&quot;input_check &quot;  name=&quot;input_check&quot; value=&quot;601237102&quot;&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;
	&amp;lt;td&amp;gt;&amp;lt;div class=&quot;wrap t_center&quot;&amp;gt;&amp;lt;span class=&quot;rank &quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;span class=&quot;none&quot;&amp;gt;위&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;

		&amp;lt;!-- 차트순위 추가 --&amp;gt;
		&amp;lt;td&amp;gt;&amp;lt;div class=&quot;wrap&quot;&amp;gt;순위...&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;

	&amp;lt;td&amp;gt;&amp;lt;div class=&quot;wrap&quot;&amp;gt;
		&amp;lt;a href=&quot;/album/detail.htm?albumId=12845274&quot; title=&quot;REVIVE+&quot; class=&quot;image_typeAll&quot;&amp;gt;
			&amp;lt;img onerror=&quot;WEBPOCIMG.defaultAlbumImg(this);&quot; width=&quot;60&quot; height=&quot;60&quot; src=&quot;https://cdnimg.melon.co.kr/cm2/album/images/128/45/274/12845274_20260223113048_500.jpg/melon/resize/120/quality/80/optimize&quot; alt=&quot;REVIVE+ - 페이지 이동&quot;/&amp;gt;
			&amp;lt;span class=&quot;bg_album_frame&quot;&amp;gt;&amp;lt;/span&amp;gt;
		&amp;lt;/a&amp;gt;
	&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;
	&amp;lt;td&amp;gt;&amp;lt;div class=&quot;wrap&quot;&amp;gt;
		&amp;lt;a href=&quot;/song/detail.htm?songId=601237102&quot; title=&quot;BANG BANG 곡정보&quot; class=&quot;btn button_icons type03 song_info&quot;&amp;gt;&amp;lt;span class=&quot;none&quot;&amp;gt;곡정보&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;
	&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;
	&amp;lt;td&amp;gt;&amp;lt;div class=&quot;wrap&quot;&amp;gt;
		&amp;lt;div class=&quot;wrap_song_info&quot;&amp;gt;
			&amp;lt;div class=&quot;ellipsis rank01&quot;&amp;gt;&amp;lt;span&amp;gt;
				&amp;lt;a href=&quot;javascript:melon.play.playSong('1000002721',601237102);&quot; title=&quot;BANG BANG 재생&quot;&amp;gt;BANG BANG&amp;lt;/a&amp;gt;
			&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;br&amp;gt;
			&amp;lt;div class=&quot;ellipsis rank02&quot;&amp;gt;
				&amp;lt;a href=&quot;/artist/timeline.htm?artistId=3055146&quot; title=&quot;IVE (아이브) - 페이지 이동&quot;&amp;gt;IVE (아이브)&amp;lt;/a&amp;gt;&amp;lt;span class=&quot;checkEllipsis&quot; style=&quot;display:none&quot;&amp;gt;&amp;lt;a href=&quot;/artist/timeline.htm?artistId=3055146&quot; title=&quot;IVE (아이브) - 페이지 이동&quot;&amp;gt;IVE (아이브)&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;
			&amp;lt;/div&amp;gt;
			
		&amp;lt;/div&amp;gt;
	&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;
	&amp;lt;td&amp;gt;&amp;lt;div class=&quot;wrap&quot;&amp;gt;
		&amp;lt;div class=&quot;wrap_song_info&quot;&amp;gt;
			&amp;lt;div class=&quot;ellipsis rank03&quot;&amp;gt;
				&amp;lt;a href=&quot;/album/detail.htm?albumId=12845274&quot; title=&quot;REVIVE+ - 페이지 이동&quot;&amp;gt;REVIVE+&amp;lt;/a&amp;gt;
			&amp;lt;/div&amp;gt;
		&amp;lt;/div&amp;gt;
	&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;
	&amp;lt;td&amp;gt;&amp;lt;div class=&quot;wrap&quot;&amp;gt;
		&amp;lt;button type=&quot;button&quot; class=&quot;button_etc like&quot; title=&quot;BANG BANG 좋아요&quot; data-song-no=&quot;601237102&quot; data-song-menuid=&quot;1000002721&quot;&amp;gt;
			&amp;lt;span class=&quot;odd_span&quot;&amp;gt;좋아요&amp;lt;/span&amp;gt;
			&amp;lt;span class=&quot;cnt&quot;&amp;gt;
				&amp;lt;span class=&quot;none&quot;&amp;gt;총건수&amp;lt;/span&amp;gt;
				0
			&amp;lt;/span&amp;gt;
		&amp;lt;/button&amp;gt;
	&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;
	&amp;lt;td&amp;gt;&amp;lt;div class=&quot;wrap t_center&quot;&amp;gt; 버튼들...&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;
&amp;lt;/tr&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;우리가 필요한 것은 순위, 노래제목, 가수, 앨범아트 입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저&amp;nbsp; winhttp 나 xmlhttp등의 http로 접속해서 HTML문서인 htmlDoc을 받아옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;getelementsbyClassname 도 가능하지만 여기서는 querySelector를 이용해보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;querySelectorAll(&quot;.lst50, .lst100&quot;) 으로 가져오면 클래스 이름이 lst50이거나 lst100 인 모든 요소를 가져올 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;.lst50 라고 쓰면 클래스 이름이고 #lst50 이면 ID, 그냥 lst50 이라고 쓰면 태그로 인식합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 하면 lst50이나 lst100인 TR 하위 요소 전체를 한 덩어리로 가져올 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 다시&amp;nbsp; .querySelector(&quot;rank&quot;).innerText 를 이용해서 rank 라는 클래스 이름에서 순위를 구합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;.querySelector(&quot;rank01&quot;).innerText 를 이용해서 rank01 라는 클래스 이름에서 노래제목을 구합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;.querySelector(&quot;rank02&quot;).innerText 를 이용하면 가수이름이 2번 나오기 때문에&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;.querySelector(&quot;rank02 &amp;gt; a&quot;).innerText 를 이용해서 첫번째&amp;nbsp; a 태그 안의 가수이름을 한 번만 가져옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;rank03은 앨범 정보이므로 넘어가도록 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앨범아트 이미지는 .querySelector(&quot;img&quot;).src 로 가져올 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앨범아트를 클릭했을 때 이동할 노래 정보 페이지는 .getAttribute(&quot;data-song-no&quot;) 로 601237102 과 같은 노래의 고유 아이디를 가져올 수 있습니다.&amp;nbsp; &lt;a href=&quot;https://www.melon.com/song/detail.htm?songId=&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.melon.com/song/detail.htm?songId=&lt;/a&gt; 이 뒤에 노래 아이디를 붙여서 링크시키면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 새로운 파일명 규칙이 순위. 가수 - 노래 제목.mp3 와 같은 식이라면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오른쪽 셀에 = Format(A2, &quot;000&quot;) &amp;amp; &quot;. &quot; &amp;amp; C2 &amp;amp; &quot; - &quot;&amp;nbsp; &amp;amp; B2 와 같은 함수식을 추가하도록 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 현재 시트에 멜론 TOP100 정보를 가져오는 전체 코드입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주) 사이트가 변경되면 언제라도 아래 코드는 작동하지 않습니다.&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1772437101739&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Option Explicit

Sub getTop100()
    
    Dim wb As Workbook
    Dim htmlContent As String
    Dim htmlDoc As New MSHTML.HTMLDocument
    Dim rowItems As IHTMLDOMChildrenCollection  'Object
    Dim item As Object  'IHTMLElement    'Object
    Dim i As Long
    
    '   'HTML 파일로 읽을 경우
    '    Dim filePath As String, fileNo As Integer, lineText As String
    '    filePath = ThisWorkbook.Path &amp;amp; &quot;\1.html&quot;
    '    fileNo = FreeFile
    '    Open filePath For Input As #fileNo
    '        Do Until EOF(fileNo)
    '            Line Input #fileNo, lineText
    '            htmlContent = htmlContent &amp;amp; Trim(lineText) &amp;amp; vbCrLf
    '        Loop
    '    Close #fileNo
    
    Dim http As Object
    Dim url As String, slink As String
    
   ' 1. 대상 URL 설정
    ' url = &quot;https://www.melon.com/chart/search/list.htm?chartType=WE&amp;amp;age=2020&amp;amp;year=2026&amp;amp;mon=01&amp;amp;day=20260126%5E20260201&amp;amp;classCd=GN0000&amp;amp;startDay=20260126&amp;amp;endDay=20260201&amp;amp;moved=Y&quot;
    ' url = &quot;https://www.melon.com/chart/week/index.htm?classCd=GN0000&amp;amp;moved=Y&amp;amp;startDay=20260126&amp;amp;endDay=20260201&quot;
     'url = &quot;https://www.melon.com/chart/week/index.htm?classCd=DM0000&amp;amp;moved=Y&amp;amp;startDay=20260126&amp;amp;endDay=20260201&quot;
    url = &quot;https://www.melon.com/chart/day/index.htm?classCd=GN0000&quot;
    ' url = &quot;https://www.melon.com/chart/search/list.htm?chartType=WE&amp;amp;classCd=GN0000&amp;amp;startDay=20260126&amp;amp;endDay=20260201&amp;amp;moved=Y&quot;
    slink = &quot;https://www.melon.com/song/detail.htm?songId=&quot;
    
    ' 2. ServerXMLHTTP 객체 생성 및 요청
    Set http = CreateObject(&quot;MSXML2.ServerXMLHTTP&quot;)
    
    With http
        .Open &quot;GET&quot;, url, False
        .setRequestHeader &quot;User-Agent&quot;, &quot;Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36&quot;
        '.setRequestHeader &quot;accept&quot;, &quot;text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7&quot;
        '.setRequestHeader &quot;Host&quot;, &quot;www.melon.com&quot;
        .send
        
        If .Status &amp;lt;&amp;gt; 200 Then MsgBox &quot;페이지 접속에 실패했습니다. 에러 코드: &quot; &amp;amp; .Status: Exit Sub
    ' 3. HTML 파싱 (Microsoft HTML Object Library 참조 필요)
        htmlDoc.body.innerHTML = .responseText
    End With
    
    ' 4. querySelectorAll로 .lst50 탐색
    Set rowItems = htmlDoc.querySelectorAll(&quot;.lst50, .lst100 &quot;)
    If rowItems Is Nothing Then MsgBox &quot;.lst50 or .lst100 fetching failed&quot;: Exit Sub
    'MsgBox rowItems.Length
    
    ' 5. 결과 출력
    Dim ws As Worksheet: Set ws = ActiveSheet: Set wb = ws.Parent
    ws.Cells.Clear: ws.Hyperlinks.Delete
    For i = ws.Shapes.Count To 1 Step -1: If ws.Shapes(i).Name Like &quot;Img_*&quot; Then ws.Shapes(i).Delete
    Next i
    ws.Range(&quot;A1:E1&quot;).Value = Array(&quot;Rank&quot;, &quot;제목&quot;, &quot;가수&quot;, &quot;파일명&quot;, &quot;앨범아트&quot;)
    
    'i = ws.Cells(ws.Rows.Count, &quot;A&quot;).End(xlUp).Row + 1
    'On Error Resume Next
    'For each item in rowItems 는 순환 후 강제종료 오류발생
    For i = 0 To rowItems.Length - 1
        
        ' 각 항목 하위의 rank01, rank02 텍스트 추출
        ws.Cells(i + 2, 1).Value = i + 1
        If Not rowItems(i).querySelector(&quot;.rank01&quot;) Is Nothing Then
            ws.Cells(i + 2, 2).Value = rowItems(i).querySelector(&quot;.rank01&quot;).innerText
        End If
        
        If Not rowItems(i).querySelector(&quot;.rank02 a&quot;) Is Nothing Then
            ws.Cells(i + 2, 3).Value = rowItems(i).querySelector(&quot;.rank02 &amp;gt; a&quot;).innerText
        End If
        '파일명
        ws.Cells(i + 2, 4).Formula = &quot;=TEXT(A&quot; &amp;amp; i + 2 &amp;amp; &quot;,&quot;&quot;000&quot;&quot;) &amp;amp; &quot;&quot;. &quot;&quot; &amp;amp; C&quot; &amp;amp; i + 2 &amp;amp; &quot; &amp;amp; &quot;&quot; - &quot;&quot; &amp;amp; B&quot; &amp;amp; i + 2
                
        '앨범이미지
        If Not rowItems(i).querySelector(&quot;img&quot;) Is Nothing Then
            'Debug.Print rowItems(i).querySelector(&quot;.input_check&quot;).Value, rowItems(i).getAttribute(&quot;data-song-no&quot;)
            With ws.Cells(i + 2, 5)
                Dim shp As Shape
                .EntireRow.RowHeight = 45
                .EntireColumn.ColumnWidth = 8
                Set shp = ws.Shapes.AddPicture(rowItems(i).querySelector(&quot;img&quot;).src, msoFalse, msoTrue, .Left, .Top, .Width, .Height)
                shp.Name = &quot;Img_&quot; &amp;amp; ws.Cells(i + 2, 4).Value
                ws.Hyperlinks.Add Anchor:=shp, Address:=slink &amp;amp; rowItems(i).getAttribute(&quot;data-song-no&quot;) 'querySelector(&quot;.input_check&quot;).Value
            End With
        End If
        
        If i = 99 Then wb.Save

    Next i
 
    Cells.Columns.AutoFit
    Set htmlDoc = Nothing
    Set http = Nothing
    
    'MsgBox &quot;완료!&quot;
End Sub&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 매크로 실행 결과 아래와 같이 나만의 방식대로 각 노래의 파일명이 완성되었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고로 앨범 아트도 보여주고 클릭하면 구체적인 노래 정보 사이트로 연결됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_013.png&quot; data-origin-width=&quot;1143&quot; data-origin-height=&quot;658&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/HE7rw/dJMcaf6LWd9/petvDy3CtzHvbREkNiKdy1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/HE7rw/dJMcaf6LWd9/petvDy3CtzHvbREkNiKdy1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/HE7rw/dJMcaf6LWd9/petvDy3CtzHvbREkNiKdy1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHE7rw%2FdJMcaf6LWd9%2FpetvDy3CtzHvbREkNiKdy1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1143&quot; height=&quot;658&quot; data-filename=&quot;Img_013.png&quot; data-origin-width=&quot;1143&quot; data-origin-height=&quot;658&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 &lt;a href=&quot;https://konahn.tistory.com/entry/rename&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;파일명 변경 매크로&lt;/a&gt;를 이용합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전 파일명이 001.mp3 였는데&amp;nbsp; 폴더의 mp3 파일들을 불러와서 C열에 = Sheet2!D2&amp;nbsp; 와 같은 함수식을 써주고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Rename Files 를 실행하면 일괄로 &quot;001. IVE (아이브) - BANG BANG.mp3&quot; 로 바뀌게 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_014.png&quot; data-origin-width=&quot;1143&quot; data-origin-height=&quot;658&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dNks0U/dJMcagq4TK6/GHL4EK0X3r0jNCnQkJWXdk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dNks0U/dJMcagq4TK6/GHL4EK0X3r0jNCnQkJWXdk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dNks0U/dJMcagq4TK6/GHL4EK0X3r0jNCnQkJWXdk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdNks0U%2FdJMcagq4TK6%2FGHL4EK0X3r0jNCnQkJWXdk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1143&quot; height=&quot;658&quot; data-filename=&quot;Img_014.png&quot; data-origin-width=&quot;1143&quot; data-origin-height=&quot;658&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;샘플 매크로 파일 첨부합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Sheet2에서 멜론 노래 정보를 가져오고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(멜론의 어떤 순위인지에 따라 url 주소를 미리 변경해야 합니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Sheet1에서 기존 파일 목록을 불러와서 C열에 =Sheet2.D2와 같은 함수식을 적용하고&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;RenameFiles를 누르면 파일명을 일괄 변경합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bybDqf/dJMcaaYG7Va/pO2EbIkIDEO6wJh9M2dYoK/RenameFiles_Melon1.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;RenameFiles_Melon1.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.49MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일명에 쓸 수 없는 문자를 검사하는 부분을 추가할 수도 있겠습니다.&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1772438168130&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;vbnet&quot;&gt;&lt;code&gt;' 파일명으로 쓸 수 없는 문자 (\ / : * ? &quot; &amp;lt; &amp;gt; |) 제거 함수
Function CleanFileName(str As String) As String
    Dim i As Integer
    Dim illegalChars As String
    illegalChars = &quot;\/:*?&quot;&quot;&amp;lt;&amp;gt;|&quot;
    CleanFileName = str
    For i = 1 To Len(illegalChars)
        CleanFileName = Replace(CleanFileName, Mid(illegalChars, i, 1), &quot;&quot;)
    Next i
End Function&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Gemini_Generated_Image_ia5cjaia5cjaia5c.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zQ0Hg/dJMcag5Huau/ewcmaI06KswbWkyZF1Bgk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zQ0Hg/dJMcag5Huau/ewcmaI06KswbWkyZF1Bgk0/img.png&quot; data-alt=&quot;Image by Gemini&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zQ0Hg/dJMcag5Huau/ewcmaI06KswbWkyZF1Bgk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzQ0Hg%2FdJMcag5Huau%2FewcmaI06KswbWkyZF1Bgk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;605&quot; height=&quot;330&quot; data-filename=&quot;Gemini_Generated_Image_ia5cjaia5cjaia5c.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Image by Gemini&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>XLS+VBA</category>
      <category>Melon</category>
      <category>querySelector</category>
      <category>rename</category>
      <category>Top100</category>
      <category>멜론</category>
      <category>실시간</category>
      <category>파일명 변경</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/345</guid>
      <comments>https://konahn.tistory.com/entry/MelonRename#entry345comment</comments>
      <pubDate>Mon, 2 Mar 2026 17:04:12 +0900</pubDate>
    </item>
    <item>
      <title>파워포인트 원하는 편집 슬라이드로 바로 이동</title>
      <link>https://konahn.tistory.com/entry/jump2slide</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;관련: &lt;a href=&quot;https://kin.naver.com/qna/detail.naver?d1id=1&amp;amp;dirId=102020103&amp;amp;docId=491589570&amp;amp;answerNo=1#answer1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;지식인&lt;/a&gt;&lt;/p&gt;
&lt;div id=&quot;SE-ca4a421f-cf66-47ae-8d8d-6c7079db6fc9&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;figure style=&quot;color: #333333; text-align: center;&quot; data-ke-style=&quot;alignCenter&quot; data-ke-mobilestyle=&quot;widthOrigin&quot; data-ke-type=&quot;image&quot;&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;003.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;559&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0Eexu/dJMcadU5o1u/KOh0qMGzWvDguEUGsyVCl0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0Eexu/dJMcadU5o1u/KOh0qMGzWvDguEUGsyVCl0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0Eexu/dJMcadU5o1u/KOh0qMGzWvDguEUGsyVCl0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0Eexu%2FdJMcadU5o1u%2FKOh0qMGzWvDguEUGsyVCl0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;653&quot; height=&quot;356&quot; data-filename=&quot;003.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;559&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-6e610aa0-74e7-4e5e-9a74-327caaec5686&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;파워포인트 슬라이드 쇼에서는 숫자 누르고 엔터를 치면 해당 숫자 슬라이드로 이동하지만&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-0cd773ef-e50e-4575-8c68-fa0d51d4a309&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;편집 상태에서는 이러한 기능을 지원하지 않습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-0b5b935e-7bd7-491d-a814-c78e7bb145bc&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-7f1b559e-6102-4468-978c-c600e04e5a76&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;지원하지 않지만 종종 요구되는 기능이기도 합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-bda2db06-72bb-4cff-9417-1659469a5b16&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;VBA로도 일반 편집 모드에서 키보드 숫자에 반응하기 어렵습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-a4834522-88c6-4243-a0b1-d1021278f23f&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-f862bb25-8142-4bbf-8a8e-c0d86d90584f&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이럴 때 AutoHotkey를 이용하는 것이 효율적입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-c9b2f2e7-3945-4a53-9f46-640103db0d78&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-37927822-161e-4362-98c9-dbad9d46136c&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;첨부한 Jump2Slide.exe 를 다운받아 실행하세요.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-5cc08a6f-9e24-4fb7-90aa-2523a3799818&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;j2s.png&quot; data-origin-width=&quot;406&quot; data-origin-height=&quot;147&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MHet6/dJMcabXjCxx/nJVY6Loo6HlIjzXSWvsL1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MHet6/dJMcabXjCxx/nJVY6Loo6HlIjzXSWvsL1k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MHet6/dJMcabXjCxx/nJVY6Loo6HlIjzXSWvsL1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMHet6%2FdJMcabXjCxx%2FnJVY6Loo6HlIjzXSWvsL1k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;406&quot; height=&quot;147&quot; data-filename=&quot;j2s.png&quot; data-origin-width=&quot;406&quot; data-origin-height=&quot;147&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-6e754db4-1b43-4755-8f6d-3d6d41022433&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;여기서 확인을 누릅니다. 상태표시줄로 최소화됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-25e2be1f-e0e0-4e8b-96ae-052cd3362c79&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-8b29d148-a1f8-409c-8b43-7ddf92e8c2ff&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이제 파워포인트 슬라이드 편집창에서&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-e1a9dd4c-3e85-4c06-8aa1-277be7cb92ab&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Ctrl을 누른 채로 원하는 슬라이드 번호 숫자를 누르고 Ctrl 키를 뗍니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-3aae9896-24db-406e-988c-668f7b226026&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Ctrl에서 손을 떼는 순간 해당 슬라이드로 바로 이동합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;예를 들어 1슬라이드 편집하다가 Ctrl+3을 누르면&amp;nbsp; Ctrl 을 떼는 순간 3슬라이드로 바로 이동합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-7c55ae88-1ef9-4f9c-93b8-8c16f95ef65d&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;623&quot; data-origin-height=&quot;531&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IxqQy/dJMcafFqcJW/8xCmcGv0YRCt5RpCx42MBK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IxqQy/dJMcafFqcJW/8xCmcGv0YRCt5RpCx42MBK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IxqQy/dJMcafFqcJW/8xCmcGv0YRCt5RpCx42MBK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIxqQy%2FdJMcafFqcJW%2F8xCmcGv0YRCt5RpCx42MBK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;623&quot; height=&quot;531&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;623&quot; data-origin-height=&quot;531&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;한 자리 수뿐만 아니라 그 이상도 가능합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;Ctrl을 누르고 13을 입력하고 Ctrl 을 떼면 13 슬라이드로 이동합니다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-180556da-2669-4cb8-8827-9746f01e6a87&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Ctrl+x를 누르면 단축키 프로그램은 종료합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-069959d8-7a85-4c4e-a87f-bbd3436889d6&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;상태표시줄의 별모양 아이콘을 우클릭 후 종료해도 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-984c7595-abe7-4036-a55d-b38f3dba94c9&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;조건:&lt;/span&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li id=&quot;SE-20d62010-aa92-4a61-8729-8db5a2865bb8&quot;&gt;파워포인트 일반 슬라이드 편집 모드일때만 작동합니다.&lt;/li&gt;
&lt;li id=&quot;SE-5743d2d2-1646-4c98-983e-30b9545b563a&quot;&gt;슬라이드쇼나 슬라이드마스터 보기 등에서는 작동하지 않습니다.&lt;/li&gt;
&lt;li id=&quot;SE-4e89a019-ee4a-4231-ad0e-3b968f74bdc2&quot;&gt;입력한 숫자가 슬라이드 범위를 벗어나면 오류창이 뜹니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-c8fa4501-b5a3-45dc-9dc1-0d3ad1448eeb&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아래는 오토핫키 코드(v1)입니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1769501528319&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.


	msgbox,64,Jump2Slide, Press &amp;lt;Ctrl-#&amp;gt; to jump to the PPT slide in the normal view. &amp;lt;Ctrl+x&amp;gt; to quit.
	;Menu, Tray, Icon, shell32.dll, 322
    if (%A_IsCompiled%)  {
		Menu, Tray, Icon, %A_ScriptName%, 1
	}
	Menu, Tray, Tip, &amp;lt;Ctrl-#&amp;gt; to jump to the PPT slide. &amp;lt;Ctrl+x&amp;gt; to quit.
	Menu, Tray, NoStandard
	Menu, Tray, Add, Exit, ExitMenu
return

Nums := &quot;&quot;

#IfWinActive ahk_class PPTFrameClass

; 숫자 0~9 및 숫자패드 대응
~^0::Nums .= &quot;0&quot;
~^1::Nums .= &quot;1&quot;
~^2::Nums .= &quot;2&quot;
~^3::Nums .= &quot;3&quot;
~^4::Nums .= &quot;4&quot;
~^5::Nums .= &quot;5&quot;
~^6::Nums .= &quot;6&quot;
~^7::Nums .= &quot;7&quot;
~^8::Nums .= &quot;8&quot;
~^9::Nums .= &quot;9&quot;
return

~Ctrl Up::
    if (Nums != &quot;&quot;) {
        JumpToSlide(Nums)
        Nums := &quot;&quot; ; 초기화
    }
return

JumpToSlide(target) {
    try {
        ppt := ComObjActive(&quot;PowerPoint.Application&quot;)
		;ppt.ActiveWindow.ViewType=9 	;ppViewNormal
        pres := ppt.ActivePresentation

        ; 문자로 저장된 target을 숫자로 변환
        slideIdx := target + 0
		;msgbox, %slideIdx%

        ; 전체 슬라이드 개수 확인
        maxSlides := pres.Slides.Count

        ; 슬라이드 범위 확인 후 이동
        if (slideIdx &amp;gt;= 1 &amp;amp;&amp;amp; slideIdx &amp;lt;= maxSlides) {
            ppt.ActiveWindow.View.GotoSlide(slideIdx)   ;jump to the target slide
        } else {
            ; 범위를 벗어날 경우 알림이 필요하다면 아래 주석을 해제하세요.
            MsgBox,,, % &quot;범위 초과: &quot; . slideIdx . &quot; (전체 &quot; . maxSlides . &quot;장)&quot;,5
        }
    } catch {
        ; 파워포인트 비활성
    }
}

#IfWinActive

ExitMenu:
^x::
	ExitApp&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-48b50a44-257b-4310-abe6-d5bec5449cbf&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;첨부한 Jump2Slide.exe를 다운로드 받아 속성에서 차단해제하시고 실행하세요.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-20d62010-aa92-4a61-8729-8db5a2865bb8&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/cisGQZ/dJMcaajN16S/eEto88JOs9VefceSK24gZK/Jump2Slide.ahk?attach=1&amp;amp;knm=tfile.ahk&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Jump2Slide.ahk&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/b2xTQZ/dJMcaaxlBAz/dtT5raqQMh6clryDsHzQ9K/Jump2Slide.exe?attach=1&amp;amp;knm=tfile.exe&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Jump2Slide.exe&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.86MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;007.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DJjQ7/dJMcaaKSo4D/c5fOYS7JGzEyi1OtPf8Wok/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DJjQ7/dJMcaaKSo4D/c5fOYS7JGzEyi1OtPf8Wok/img.jpg&quot; data-alt=&quot;Jump2Slide Autohotkey&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DJjQ7/dJMcaaKSo4D/c5fOYS7JGzEyi1OtPf8Wok/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDJjQ7%2FdJMcaaKSo4D%2Fc5fOYS7JGzEyi1OtPf8Wok%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;391&quot; height=&quot;391&quot; data-filename=&quot;007.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Jump2Slide Autohotkey&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>AutoHotKey</category>
      <category>GoToSlide</category>
      <category>Hotkey</category>
      <category>jump to slide</category>
      <category>move to slide</category>
      <category>quick jump</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/344</guid>
      <comments>https://konahn.tistory.com/entry/jump2slide#entry344comment</comments>
      <pubDate>Tue, 27 Jan 2026 17:24:36 +0900</pubDate>
    </item>
    <item>
      <title>엑셀 데이터를 다른 창 입력란에 자동으로 일괄 붙여넣기</title>
      <link>https://konahn.tistory.com/entry/PasteOver</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Gemini_Generated_Image_ra858dra858dra85.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7Gcqv/dJMcag5nmHV/sISwKeXbGY10GS2tBZ5Eak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7Gcqv/dJMcag5nmHV/sISwKeXbGY10GS2tBZ5Eak/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7Gcqv/dJMcag5nmHV/sISwKeXbGY10GS2tBZ5Eak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7Gcqv%2FdJMcag5nmHV%2FsISwKeXbGY10GS2tBZ5Eak%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;451&quot; height=&quot;246&quot; data-filename=&quot;Gemini_Generated_Image_ra858dra858dra85.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀 시트에 데이터를 생성, 정리해놓고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;웹브라우저나 DB시스템 등에 자료를 입력해야하는 상황에서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;직접 손으로 입력하기에는 너무 힘들기 때문에&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VBA를 이용해서 자동화할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주로 SendKeys를 이용해서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터를 복사하고 붙여넣은 다음 Sleep으로 잠시 대기하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 행의 데이터를 붙여넣는 방식입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1769018998022&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#If VBA7 Then
    Declare PtrSafe Function FindWindow Lib &quot;user32&quot; Alias &quot;FindWindowA&quot; (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPtr
    Declare PtrSafe Function SetForegroundWindow Lib &quot;user32&quot; (ByVal hwnd As LongPtr) As Long
    Declare PtrSafe Function IsIconic Lib &quot;user32&quot; (ByVal hwnd As LongPtr) As Long
    Declare PtrSafe Function ShowWindow Lib &quot;user32&quot; (ByVal hwnd As LongPtr, ByVal nCmdShow As Long) As Long
    Declare PtrSafe Sub Sleep Lib &quot;kernel32&quot; (ByVal Milliseconds As LongPtr)
    Dim hwnd As LongPtr
#Else
    Declare Function FindWindow Lib &quot;user32&quot; Alias &quot;FindWindowA&quot; (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Declare Function SetForegroundWindow Lib &quot;user32&quot; (ByVal hwnd As Long) As Long
    Declare Function IsIconic Lib &quot;user32&quot; (ByVal hwnd As Long) As Long
    Declare Function ShowWindow Lib &quot;user32&quot; (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
    Declare Sub Sleep Lib &quot;kernel32&quot; (ByVal Milliseconds As Long)
    Dim hwnd As Long
#End If

Const SW_RESTORE = 9

'   ********
'   주의사항!!
'
'   반드시 붙여넣을 대상 윈도우창에서 '첫번째 입력칸'을 선택한 상태에서 
'   엑셀창에는 붙여넣을 내용이 입력된 첫번째 셀을 선택하고 실행할 것!
'
'   ********

Sub A1_PasteOver()

    Dim sht As Worksheet
    Dim r As Range
    Dim str$, usr$, sTitle$, targetCol$, i%, firstrow&amp;amp;, lastrow&amp;amp;, TabCount%
    
    '크롬창 찾기
    'sTitle = &quot;제목 없는 설문지 - Chrome&quot;
    'hwnd = FindWindow(vbNullString, sTitle) '윈도우 창이름으로 찾기
    'sTitle = &quot;Chrome_WidgetWin_1&quot;
    'hWnd = FindWindow(sTitle, vbNullString)   '클래스 이름으로 찾기
    hwnd = GetPreviousVisibleWindow(2)
    If hwnd = 0 Then MsgBox &quot;대상 윈도우창 찾기 실패&quot;, vbCritical: Exit Sub
    
    firstrow = ActiveCell.Row
    Set sht = ActiveSheet
    targetCol = Split(ActiveCell.Address(True, True), &quot;$&quot;)(1) '대상 컬럼 기호  (Ex: F열)
    lastrow = sht.Cells(sht.Rows.Count, targetCol).End(xlUp).Row
    
    '확인
    sTitle = GetWindowTitle$(hwnd)
    usr = InputBox(&quot;대상 윈도우 창: [&quot; &amp;amp; sTitle &amp;amp; &quot;] 창&quot; &amp;amp; vbNewLine &amp;amp; _
            &quot;(첫번째 입력란이 선택되어 있어야 함)&quot; &amp;amp; vbNewLine &amp;amp; vbNewLine &amp;amp; _
            &quot;소스 데이터: 현재 시트의 &quot; &amp;amp; targetCol &amp;amp; firstrow &amp;amp; &quot;부터 &quot; &amp;amp; targetCol &amp;amp; lastrow &amp;amp; &quot;까지&quot; &amp;amp; vbNewLine &amp;amp; vbNewLine &amp;amp; _
            &quot;각 데이터를 입력한 후 &amp;lt;TAB&amp;gt;키 입력횟수는?&quot; &amp;amp; vbNewLine &amp;amp; &quot;(데이터 사이의 입력필드 개수에 따라 다름)?&quot;, _
            &quot;엑셀 데이터 연속 붙여넣기 자동화&quot;, 1)
    usr = Trim(usr)
    If Len(usr) = 0 Or Not IsNumeric(usr) Then Exit Sub
    TabCount = CInt(usr)
    
    '대상 윈도우창 활성화
    If IsIconic(hwnd) Then ShowWindow hwnd, SW_RESTORE
    SetForegroundWindow hwnd
    'AppActivate sTitle, True
    
    '입력할 셀 순환
    For Each r In sht.Range(targetCol &amp;amp; firstrow &amp;amp; &quot;:&quot; &amp;amp; targetCol &amp;amp; lastrow)
        
        '내용을 클립보드에 복사
        str = Trim(r.Text)
        SetCB str
        Sleep 100
        
        '기존 입력 내용이 사라지도록 먼저 전체선택
        'Application.SendKeys &quot;^a&quot;, True
        'Sleep 100
        
        '입력칸에 붙여넣기
        Application.SendKeys &quot;^v&quot;, True
        Sleep 100
                
        'TAB키를 x번 눌러 다음 입력칸으로 이동
        'TabCount = 1
        For i = 1 To TabCount
            Application.SendKeys &quot;{TAB}&quot;, True
            Sleep 100
        Next i
        
    Next r
    
End Sub

 
'https://blog.naver.com/program114/220401934980
'// 클립보드에 텍스트 쓰기
Public Function SetCB(ByRef sText As String) As Boolean ' ### 리턴값: 성공 여부
    On Error GoTo nErr
    Dim Clipboard As Object
'    Microsoft Forms 2.0 Object Library
    Set Clipboard = CreateObject(&quot;new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}&quot;)
    Clipboard.SetText sText
    Clipboard.PutInClipboard
    SetCB = True
nErr:
End Function


'// 클립보드의 텍스트 읽기
Public Function GetCB$()
    On Error GoTo nErr
    Dim Clipboard As Object
'    Microsoft Forms 2.0 Object Library
    Set Clipboard = CreateObject(&quot;new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}&quot;)
    Clipboard.GetFromClipboard
    GetCB = Clipboard.GetText
nErr:
End Function

Sub A2_RemoveBlankLines()
    
    Dim rng As Range
    Dim l As Long
    
    Set rng = ActiveWindow.Selection
    For l = rng.Rows.Count To 1 Step -1
        If rng.Cells(l, 1).Text = &quot;&quot; Then
            rng.Cells(l, 1).Delete Shift:=xlUp
        End If
    Next l
    
End Sub

Sub A3_DeleteEmptyCells()

    On Error Resume Next ' 선택 영역에 빈 셀이 없을 경우 발생하는 에러 방지
    Selection.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
    On Error GoTo 0
    
End Sub&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;사례 1:&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 웹브라우저에 아래와 같은 설문양식이 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 질문에 차례로 답변을 입력해야 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_002.png&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;1349&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WCBzc/dJMcacBTxrO/icaHrMc89aHbiZRAVkf5A1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WCBzc/dJMcacBTxrO/icaHrMc89aHbiZRAVkf5A1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WCBzc/dJMcacBTxrO/icaHrMc89aHbiZRAVkf5A1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWCBzc%2FdJMcacBTxrO%2FicaHrMc89aHbiZRAVkf5A1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;532&quot; height=&quot;703&quot; data-filename=&quot;Img_002.png&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;1349&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫번째 입력란을 선택한 상태에서 엑셀창에서 데이터를 준비합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, 웹브라우저 창위에 엑셀창이 있어야 합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀 시트에 위에 웹브라우저창에 입력할 내용을 아래와 같이 A1:A10에 정리했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_001.png&quot; data-origin-width=&quot;1066&quot; data-origin-height=&quot;857&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yDgc4/dJMcaihNZDr/xkHwoukOOrXfb4KyCxwFS0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yDgc4/dJMcaihNZDr/xkHwoukOOrXfb4KyCxwFS0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yDgc4/dJMcaihNZDr/xkHwoukOOrXfb4KyCxwFS0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyDgc4%2FdJMcaihNZDr%2FxkHwoukOOrXfb4KyCxwFS0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;656&quot; height=&quot;527&quot; data-filename=&quot;Img_001.png&quot; data-origin-width=&quot;1066&quot; data-origin-height=&quot;857&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Alt+F8을 누르고 PasteOver 매크로를 실행합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;RemoveBlankLines는 모든 빈 줄을 삭제하고 아래줄을 위로 당깁니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;DeleteEmptyCells는 모든 빈 셀을 삭제하고 아래 셀을 위로 당깁니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 아래와 같은 확인창이 뜹니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_003.png&quot; data-origin-width=&quot;622&quot; data-origin-height=&quot;288&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/H6XXt/dJMcachzTZm/00mhdqaKDImS58sMEtAer1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/H6XXt/dJMcachzTZm/00mhdqaKDImS58sMEtAer1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/H6XXt/dJMcachzTZm/00mhdqaKDImS58sMEtAer1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FH6XXt%2FdJMcachzTZm%2F00mhdqaKDImS58sMEtAer1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;464&quot; height=&quot;215&quot; data-filename=&quot;Img_003.png&quot; data-origin-width=&quot;622&quot; data-origin-height=&quot;288&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대상 윈도우창 제목을 확인하세요. 대상 윈도우창이 맞아야 엑셀 데이터가 해당 창에 붙여넣어집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;※ &lt;b&gt;주의&lt;/b&gt;) 반드시 첫번째 입력란이 선택되어 있고 엑셀창 이전 윈도우창이어야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소스 데이터는 엑셀 시트에 현재 선택된 행부터 맨 아래행까지입니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;※&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;주의&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;)&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; 엑셀 시트에서 데이터 시작 셀을 선택해야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 입력 데이터 사이사이마다 &amp;lt;TAB&amp;gt;키를 몇번 입력할 지 숫자를 입력합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우는 한 문장 입력하고 탭키를 한 번만 치면 다음 입력란으로 이동하기 때문에 1을 입력합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;확인을 누르면 아래와 같이 자동으로 10문장을 답란 칸에 차례로 붙여넣습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.gif&quot; data-origin-width=&quot;1382&quot; data-origin-height=&quot;1025&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/BhpPZ/dJMb99SHQS1/JVdkFNTIZReOpbf6r8YZsK/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/BhpPZ/dJMb99SHQS1/JVdkFNTIZReOpbf6r8YZsK/img.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/BhpPZ/dJMb99SHQS1/JVdkFNTIZReOpbf6r8YZsK/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/BhpPZ/dJMb99SHQS1/JVdkFNTIZReOpbf6r8YZsK/img.gif&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1382&quot; height=&quot;1025&quot; data-filename=&quot;1.gif&quot; data-origin-width=&quot;1382&quot; data-origin-height=&quot;1025&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대상 창의 입력 환경에 따라 입력할 때 수정할 부분은 아래 부분을 고치면 되겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어 기존 데이터를 지우고 붙여넣는다면 ^a&amp;nbsp; 즉 Ctrl+a를 누르고 모두 선택한 상태에서 붙여넣게 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SendKeys에서 Ctrl은 ^, Alt 는 %, Shift는&amp;nbsp; + 기호를 사용합니다.&amp;nbsp; SendKeys &quot;+a&quot; 는&amp;nbsp; Shift+a 를 입력해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또는 지연 시간을 Sleep 100 을 수정합니다. 1000이 1초에 해당합니다.&lt;/p&gt;
&lt;pre id=&quot;code_1769019574916&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;'입력할 셀 순환
    For Each r In sht.Range(targetCol &amp;amp; firstrow &amp;amp; &quot;:&quot; &amp;amp; targetCol &amp;amp; lastrow)
        
        '내용을 클립보드에 복사
        str = Trim(r.Text)
        SetCB str
        Sleep 100
        
        '기존 입력 내용이 사라지도록 먼저 전체선택
        'Application.SendKeys &quot;^a&quot;, True
        'Sleep 100
        
        '입력칸에 붙여넣기
        Application.SendKeys &quot;^v&quot;, True
        Sleep 100
                
        'TAB키를 x번 눌러 다음 입력칸으로 이동
        'TabCount = 1
        For i = 1 To TabCount
            Application.SendKeys &quot;{TAB}&quot;, True
            Sleep 100
        Next i
        
    Next r&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SendKeys 에서 활용 가능한 특수키는 아래 링크를 참조하세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/sendkeys-statement&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://learn.microsoft.com/en-us/office/vba/language/reference/user-interface-help/sendkeys-statement&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 참고로 아래는 이전 윈도우창을 찾을 때 사용하는&amp;nbsp;코드입니다:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 엑셀 창 바로 아래에 웹브라우저 등의 윈도우 창이 붙여넣을 대상 윈도우창인데 이 창을 찾기 위한 작업입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EnumWindows로 윈도우창 목록을 배열로 만들고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;바로 이전 윈도우의 hWnd 값을 찾아내고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;getWindowText로 윈도우 창 타이틀을 가져옵니다.&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1769046661042&quot; class=&quot;vbnet&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;vbnet&quot;&gt;&lt;code&gt;Option Explicit

#If VBA7 Then
    Declare PtrSafe Function EnumWindows Lib &quot;user32&quot; _
        (ByVal lpEnumFunc As LongPtr, ByVal lParam As LongPtr) As Long
    Declare PtrSafe Function IsWindowVisible Lib &quot;user32&quot; _
        (ByVal hwnd As LongPtr) As Long
    Declare PtrSafe Function GetWindowText Lib &quot;user32&quot; Alias &quot;GetWindowTextA&quot; _
        (ByVal hwnd As LongPtr, ByVal lpString As String, ByVal cch As Long) As Long
#Else
    Declare Function EnumWindows Lib &quot;user32&quot; _
        (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
    Declare Function IsWindowVisible Lib &quot;user32&quot; _
        (ByVal hwnd As Long) As Long
    Declare Function GetWindowText Lib &quot;user32&quot; Alias &quot;GetWindowTextA&quot; _
        (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
#End If

#If VBA7 Then
    Public gHWNDs() As LongPtr
#Else
    Public gHWNDs() As Long
#End If

Dim gCount As Long

#If VBA7 Then
Public Function EnumWindowsProc(ByVal hwnd As LongPtr, ByVal lParam As LongPtr) As Long
#Else
Public Function EnumWindowsProc(ByVal hwnd As Long, ByVal lParam As Long) As Long
#End If

    ' 보이는 창만 수집
    If IsWindowVisible(hwnd) &amp;lt;&amp;gt; 0 And Len(GetWindowTitle(hwnd)) &amp;gt; 0 And hwnd &amp;lt;&amp;gt; Application.hwnd Then
        gCount = gCount + 1
        ReDim Preserve gHWNDs(1 To gCount)
        gHWNDs(gCount) = hwnd
    End If

    EnumWindowsProc = 1 ' 계속 열거
End Function

#If VBA7 Then
Public Function GetPreviousVisibleWindow(ByVal n As Long) As LongPtr
#Else
Public Function GetPreviousVisibleWindow(ByVal n As Long) As Long
#End If

    gCount = 0
    Erase gHWNDs

    ' 모든 창 열거
    EnumWindows AddressOf EnumWindowsProc, 0

    ' n번째 창 반환
    If gCount &amp;gt;= n Then
        GetPreviousVisibleWindow = gHWNDs(n)
    Else
        GetPreviousVisibleWindow = 0 ' n번째 창 없음
    End If
End Function

#If VBA7 Then
Public Function GetWindowTitle(tHwnd As LongPtr) As String
#Else
Public Function GetWindowTitle(tHwnd As Long) As String
#End If
    Dim title As String * 256
    Dim lenTitle As Long
    
    If tHwnd = 0 Then
        GetWindowTitle = &quot;&quot;
        Exit Function
    End If

    lenTitle = GetWindowText(tHwnd, title, 256)
    GetWindowTitle = Left$(title, lenTitle)
    GetWindowTitle = Replace(GetWindowTitle, Chr(0), &quot;&quot;) 'NULL문자 제거
End Function

Private Sub getPreviousVisibleWindow_Test()
#If VBA7 Then
    Dim hwnd2 As LongPtr
#Else
    Dim hwnd2 As Long
#End If
    Dim title2 As String

    'Module2.ListAllWindows
    
    ' 2번째 보이는 창
    hwnd2 = GetPreviousVisibleWindow(2)
    title2 = GetWindowTitle(hwnd2)

    If hwnd2 &amp;lt;&amp;gt; 0 Then

        Debug.Print &quot;======= 2번째 보이는 창 hwnd = &quot;; hwnd2
        Debug.Print &quot;타이틀 = &quot;; title2
    Else
        Debug.Print &quot;2번째 보이는 창 없음&quot;
    End If
End Sub&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VBA가 포함된 샘플 파일 첨부합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/UOP3O/dJMb996eO6N/KX46R0mKMkueK5NKV5ECR1/PasteOver1.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;PasteOver1.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.03MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;사례2:&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래한글 문서에 아래와 같은 표 양식이 있습니다. 성명란에 이름을 쭉 입력하려고 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bUXYSM/dJMcafL92Y3/NRMil97kmg05OkOQAOQfnK/%EB%B0%A9%EB%AC%B8%EC%9E%90%20%EB%AA%85%EB%8B%A8.hwp?attach=1&amp;amp;knm=tfile.hwp&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;방문자 명단.hwp&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.03MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;475&quot; data-origin-height=&quot;666&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMUWHC/dJMcaioyKkM/pPw0aFStsIkY8hWOFKN300/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMUWHC/dJMcaioyKkM/pPw0aFStsIkY8hWOFKN300/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMUWHC/dJMcaioyKkM/pPw0aFStsIkY8hWOFKN300/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMUWHC%2FdJMcaioyKkM%2FpPw0aFStsIkY8hWOFKN300%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;475&quot; height=&quot;666&quot; data-filename=&quot;Img_004.png&quot; data-origin-width=&quot;475&quot; data-origin-height=&quot;666&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래한글 도구 메뉴 &amp;gt; 환경설정에서 &lt;b&gt;표 안에서 &amp;lt;TAB&amp;gt;키로 다음 셀로 이동&lt;/b&gt;할 수 있게 설정되어 있어야 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_006.png&quot; data-origin-width=&quot;933&quot; data-origin-height=&quot;647&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c1HRXc/dJMcagK4sP5/Bk0YkqRvgp1qihpHS3Gnv1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c1HRXc/dJMcagK4sP5/Bk0YkqRvgp1qihpHS3Gnv1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c1HRXc/dJMcagK4sP5/Bk0YkqRvgp1qihpHS3Gnv1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc1HRXc%2FdJMcagK4sP5%2FBk0YkqRvgp1qihpHS3Gnv1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;672&quot; height=&quot;466&quot; data-filename=&quot;Img_006.png&quot; data-origin-width=&quot;933&quot; data-origin-height=&quot;647&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한글창 바로 위에 엑셀창이 있고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀시트에는 아래처럼 이름이 정리되어 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Alt+F8을 누르고 PasteOver 매크로를 실행합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_005.png&quot; data-origin-width=&quot;756&quot; data-origin-height=&quot;418&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbfqoU/dJMcabJLGcU/msEm7q8J6mwiKpAG8PINJk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbfqoU/dJMcabJLGcU/msEm7q8J6mwiKpAG8PINJk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbfqoU/dJMcabJLGcU/msEm7q8J6mwiKpAG8PINJk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbfqoU%2FdJMcabJLGcU%2FmsEm7q8J6mwiKpAG8PINJk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;756&quot; height=&quot;418&quot; data-filename=&quot;Img_005.png&quot; data-origin-width=&quot;756&quot; data-origin-height=&quot;418&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우는 &amp;lt;Tab&amp;gt;키를 4번 치면 다음 이름칸에 도착하므로 4를 입력합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;확인을 누른 결과입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2.gif&quot; data-origin-width=&quot;807&quot; data-origin-height=&quot;638&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMt7WB/dJMcacu7zfv/CwUkbuHnwF5ukr4LkfYFuK/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMt7WB/dJMcacu7zfv/CwUkbuHnwF5ukr4LkfYFuK/img.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMt7WB/dJMcacu7zfv/CwUkbuHnwF5ukr4LkfYFuK/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/bMt7WB/dJMcacu7zfv/CwUkbuHnwF5ukr4LkfYFuK/img.gif&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;807&quot; height=&quot;638&quot; data-filename=&quot;2.gif&quot; data-origin-width=&quot;807&quot; data-origin-height=&quot;638&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 국적 데이터를 선택하고 한 번 더 실행하면 되겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아니면 코드를 약간 더 수정해서 여러열을 붙여넣게 할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 아래한글의 경우&lt;a href=&quot;https://konahn.tistory.com/entry/HwpCtrlBasic&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt; 한글 HWP 컨트롤을 이용&lt;/a&gt;해서 더 정확하게 자동화할 수 있지만&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;간단히 SendKeys로 이렇게 일괄 입력 작업을 처리할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✅  활용 예시:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 엑셀 데이터를 웹브라우저 설문조사 입력란에 일괄로 붙여넣기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 학원/학교에서 학생 평가자료나 평가문을 출력 양식 프로그램에 일괄로 입력하기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 아래한글 메일머지 대신 봉투 주소/수신자 등 일괄 입력&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 대규모 DB작업&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 실험 데이터 일괄 입력&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 기타 일괄 입력이 어려운 프로그램창에 엑셀데이터 일괄 입력&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  향후 개선 사항:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 키보드 매크로에 가까운 방법이라 한계가 있음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 데이터가 정확히 해당란에 입력되는지 확인 필요. 중간에 누락된 명단이 있다면 입력 오류 발생.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 웹의 경우 Json 이나 POST 데이터로 서버에 보내는 방식이 더 정교한 입력방식임&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 시스템의 상황에 따라 키보드로 붙여넣을 때 엉뚱한 창에 데이터가 붙여넣어질 수 있음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✔️❌주의사항:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 위 내용은 데이터 일괄 입력방법에 대한 순수한 교육적 목적의 자료임&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 불법적인 목적으로 오남용하지 않아야 함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 책임은 사용자에게 있음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 개인적인 용도와 작업에만 사용해야 함&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Gemini_Generated_Image_y15kry15kry15kry.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;736&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/w52FK/dJMcacBTEAQ/GRoxXygcHw9FuFnkytfrlK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/w52FK/dJMcacBTEAQ/GRoxXygcHw9FuFnkytfrlK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/w52FK/dJMcacBTEAQ/GRoxXygcHw9FuFnkytfrlK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fw52FK%2FdJMcacBTEAQ%2FGRoxXygcHw9FuFnkytfrlK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;503&quot; height=&quot;263&quot; data-filename=&quot;Gemini_Generated_Image_y15kry15kry15kry.png&quot; data-origin-width=&quot;1408&quot; data-origin-height=&quot;736&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>XLS+VBA</category>
      <category>CTRL+V</category>
      <category>sendkeys</category>
      <category>매크로</category>
      <category>일괄붙여넣기</category>
      <category>자동화</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/343</guid>
      <comments>https://konahn.tistory.com/entry/PasteOver#entry343comment</comments>
      <pubDate>Thu, 22 Jan 2026 08:30:41 +0900</pubDate>
    </item>
    <item>
      <title>엑셀로 영상 편집하기?</title>
      <link>https://konahn.tistory.com/entry/RandomCut</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c541kj/dJMcafd4Q83/6Jy1PqBjkav7ChQ9Y7Womk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c541kj/dJMcafd4Q83/6Jy1PqBjkav7ChQ9Y7Womk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c541kj/dJMcafd4Q83/6Jy1PqBjkav7ChQ9Y7Womk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc541kj%2FdJMcafd4Q83%2F6Jy1PqBjkav7ChQ9Y7Womk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;394&quot; height=&quot;394&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt;엑셀로 영상을 편집한다?&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;숫자를 계산하는 용도인 엑셀로 동영상을 편집한다니&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;말도 안되는 이야기처럼 보이지만&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래처럼 영상의 시간을 입력해서 영상을 규칙적으로 자르고 일정 부분을 추출해서 최종 영상으로 합칠 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1460&quot; data-origin-height=&quot;771&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6BgJ4/dJMcagjKggl/b2KSNL2KoeBvzshHt8oPa1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6BgJ4/dJMcagjKggl/b2KSNL2KoeBvzshHt8oPa1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6BgJ4/dJMcagjKggl/b2KSNL2KoeBvzshHt8oPa1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6BgJ4%2FdJMcagjKggl%2Fb2KSNL2KoeBvzshHt8oPa1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1460&quot; height=&quot;771&quot; data-origin-width=&quot;1460&quot; data-origin-height=&quot;771&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 고프로나 DJI Action, AcePro , Insta360 등 액션카메라나 휴대폰으로 촬영한 몇시간짜리 긴 영상이 있을 때&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프리미어나 다빈치 리졸브, 파이널컷, 캡컷, 샷컷 등의 영상 편집프로그램을 이용하지 않고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;전체 영상을 2분마다 3초씩 추출해서 하나의 랜덤 기록 영상을 만들고 싶을 때&lt;/b&gt; 이용하면 효과적입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 엑셀에서 영상을 직접 편집하는 것은 아니고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FFMPEG 이라는 커맨드라인 프로그램에 명령을 보내서 처리합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.ffmpeg.org/download.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.ffmpeg.org/download.html&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀 VBA는 중간에서 FFMPEG에 보낼 명령어를 생성해서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;순차적으로 보내주는 역할을 수행합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dDu0ND/dJMcafrBMMU/mQR5D7dWB7rqJpDbBZiOi0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dDu0ND/dJMcafrBMMU/mQR5D7dWB7rqJpDbBZiOi0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dDu0ND/dJMcafrBMMU/mQR5D7dWB7rqJpDbBZiOi0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdDu0ND%2FdJMcafrBMMU%2FmQR5D7dWB7rqJpDbBZiOi0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;558&quot; height=&quot;558&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;활용 순서:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. RandCut1.xlsm 을 다운로드 받아 파일 속성에서 차단해제하고 나서 열 때 매크로를 허용합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(아래 버전은 버전1이고 맨 아래에 최신 버전을 다운로드하세요.)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bi93wC/dJMb99ZdZxc/OoAUNsmqLkKFKMaTBonSE1/RandCut1.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;RandCut1.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.09MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;378&quot; data-origin-height=&quot;326&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TP4az/dJMcagKORHm/7rKPgfuc9t4jXp371VDrJ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TP4az/dJMcagKORHm/7rKPgfuc9t4jXp371VDrJ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TP4az/dJMcagKORHm/7rKPgfuc9t4jXp371VDrJ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTP4az%2FdJMcagKORHm%2F7rKPgfuc9t4jXp371VDrJ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;191&quot; height=&quot;165&quot; data-origin-width=&quot;378&quot; data-origin-height=&quot;326&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 동영상 파일을 한 폴더에 모두 집어 넣습니다. 파일명이 시간 순서로 정렬되어 있어야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 고프로 영상의 경우 파일순서가 섞일 수 있으므로 Rename 탭에서&amp;nbsp;파일 이름을 변경합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Get Folder 버튼을 누르고 폴더 안에 들어가서 확인을 누르면&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;폴더내의 영상에 대한 미디어정보와 변경될 파일명이 뜨는데 이 때 Rename Files버튼을 눌러 파일명을 시간순서대로 정렬합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_003.png&quot; data-origin-width=&quot;1198&quot; data-origin-height=&quot;528&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cQT5Eu/dJMcaioj69I/cWMuItgVjdPrc1KIKSb4iK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cQT5Eu/dJMcaioj69I/cWMuItgVjdPrc1KIKSb4iK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cQT5Eu/dJMcaioj69I/cWMuItgVjdPrc1KIKSb4iK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcQT5Eu%2FdJMcaioj69I%2FcWMuItgVjdPrc1KIKSb4iK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1198&quot; height=&quot;528&quot; data-filename=&quot;Img_003.png&quot; data-origin-width=&quot;1198&quot; data-origin-height=&quot;528&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. Config탭에서 환경을 설정합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FFMPEG.EXE의 위치를 C:\FFMPEG\ffmpeg.exe 과 같이 입력합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 영상 미리보기용 프로그램의 위치를 C:\DaumPot\PotPlayer17\PotPlayerMini64.exe 과 같이 입력합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A열의 시간들은 각 영상을 1차적으로 나눌&amp;nbsp; 시간 길이목록입니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;B열의 시간들은 1차적으로 나눈 영상에서 최초 가져올 시간길이 목록입니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 시간 목록들이 나중에 기본으로 뜨게 되는 시간들입니다. 처음에는 안건드려도 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;762&quot; data-origin-height=&quot;529&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbeY0J/dJMcagjKfMy/h10ytF5x7eg1eIMung6pI0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbeY0J/dJMcagjKfMy/h10ytF5x7eg1eIMung6pI0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbeY0J/dJMcagjKfMy/h10ytF5x7eg1eIMung6pI0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbeY0J%2FdJMcagjKfMy%2Fh10ytF5x7eg1eIMung6pI0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;762&quot; height=&quot;529&quot; data-origin-width=&quot;762&quot; data-origin-height=&quot;529&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5. RandCut 탭을 선택합니다. GetFolder 를 누르고 영상이 들어 있는 폴더 안으로 들어가서 '확인'을 누릅니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;317&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbCTzV/dJMcabCJ7vF/NF8SBQVQrkAJKFPwGecUhk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbCTzV/dJMcabCJ7vF/NF8SBQVQrkAJKFPwGecUhk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbCTzV/dJMcabCJ7vF/NF8SBQVQrkAJKFPwGecUhk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbCTzV%2FdJMcabCJ7vF%2FNF8SBQVQrkAJKFPwGecUhk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;746&quot; height=&quot;317&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;317&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일명과 간단한 미디어정보를 불러옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6.&amp;nbsp; 타이틀 제목 영상 삽입 여부를 선택합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;타이틀 영상은 해당 폴더명을 검은 배경위에 띄운 단순한 짧은 타이틀 영상입니다. (FFMPEG을 이용합니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;752&quot; data-origin-height=&quot;320&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/GqxTa/dJMcadAvs6m/PsN9mn0RUKOktDfZ3AhkBK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/GqxTa/dJMcadAvs6m/PsN9mn0RUKOktDfZ3AhkBK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/GqxTa/dJMcadAvs6m/PsN9mn0RUKOktDfZ3AhkBK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGqxTa%2FdJMcadAvs6m%2FPsN9mn0RUKOktDfZ3AhkBK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;752&quot; height=&quot;320&quot; data-origin-width=&quot;752&quot; data-origin-height=&quot;320&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7. 영상 썸네일을 생성 여부를 선택합니다. 영상이 많으면 작업시간이 좀 걸립니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;472&quot; data-origin-height=&quot;143&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/txv5S/dJMcabQg5rm/xlocNIOU7ktBspScPSGq9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/txv5S/dJMcabQg5rm/xlocNIOU7ktBspScPSGq9k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/txv5S/dJMcabQg5rm/xlocNIOU7ktBspScPSGq9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ftxv5S%2FdJMcabQg5rm%2FxlocNIOU7ktBspScPSGq9k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;472&quot; height=&quot;143&quot; data-origin-width=&quot;472&quot; data-origin-height=&quot;143&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8. F2와 G2셀에&amp;nbsp; 전체적인 1차 분할시간과 2차 추출시간을 설정합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1차 분할시간 마다 영상을 나눈 다음&amp;nbsp; 초반의 2차 추출시간만큼 영상을 추출하는 규칙입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 00:02:00 과 0:00:02 라면&amp;nbsp; 2분마다 초반 2초를 추출합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 설정은 글로벌 설정으로 각 영상에 특수한 분할시간이 지정되지 않은 한 항상 규칙대로 영상을 추출합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1169&quot; data-origin-height=&quot;377&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czxrO7/dJMcahCW6sj/pXpXd4fWXpQP0lPKHEgePk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czxrO7/dJMcahCW6sj/pXpXd4fWXpQP0lPKHEgePk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czxrO7/dJMcahCW6sj/pXpXd4fWXpQP0lPKHEgePk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczxrO7%2FdJMcahCW6sj%2FpXpXd4fWXpQP0lPKHEgePk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1169&quot; height=&quot;377&quot; data-origin-width=&quot;1169&quot; data-origin-height=&quot;377&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9. 각 영상의 썸네일을 클릭해서 영상 내용을 확인하고 각 영상에 특별한 시간 설정이 필요한 경우 오른쪽에 개별 시간을 설정합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어 7행의 영상은 매 30초마다 초반 5초의 영상을 추출합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;타이틀 영상은 기본 2차 추출 시간만큼의 길이로 자동 생성됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여러셀을 선택한 상태에서 시간을 한 번 설정하면 선택된 모든 영상이 적용됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10. (선택 옵션) 만일 Alt+F8 누르고 SetMinimalDuration을 실행하면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;468&quot; data-origin-height=&quot;414&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IJpZ0/dJMcaiaNwpu/FXkjiOAk3srRDwbvkH3S1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IJpZ0/dJMcaiaNwpu/FXkjiOAk3srRDwbvkH3S1k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IJpZ0/dJMcaiaNwpu/FXkjiOAk3srRDwbvkH3S1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIJpZ0%2FdJMcaiaNwpu%2FFXkjiOAk3srRDwbvkH3S1k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;468&quot; height=&quot;414&quot; data-origin-width=&quot;468&quot; data-origin-height=&quot;414&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 지정한 길이의 시간 이내의 영상들은 모두 각 영상의 최대 길이로 설정해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉&amp;nbsp; 6초 이내의 영상은 모두 영상 길이만큼 재생하도록 해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;434&quot; data-origin-height=&quot;143&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ec3Zq6/dJMcabirOrW/DCREzOnAkz5GREg1k4Gh6k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ec3Zq6/dJMcabirOrW/DCREzOnAkz5GREg1k4Gh6k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ec3Zq6/dJMcabirOrW/DCREzOnAkz5GREg1k4Gh6k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fec3Zq6%2FdJMcabirOrW%2FDCREzOnAkz5GREg1k4Gh6k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;434&quot; height=&quot;143&quot; data-origin-width=&quot;434&quot; data-origin-height=&quot;143&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;11. Start Processing 을 누르면 작업을 시작합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;607&quot; data-origin-height=&quot;170&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGyZtM/dJMcahCW6CK/gj4BxuGZvdJSLiFuHtQx21/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGyZtM/dJMcahCW6CK/gj4BxuGZvdJSLiFuHtQx21/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGyZtM/dJMcahCW6CK/gj4BxuGZvdJSLiFuHtQx21/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGyZtM%2FdJMcahCW6CK%2Fgj4BxuGZvdJSLiFuHtQx21%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;607&quot; height=&quot;170&quot; data-origin-width=&quot;607&quot; data-origin-height=&quot;170&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 작업중인 영상을 선택하면서 작업 진행상황을 보여줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;12. 최종 영상은 언더바(_) + 폴더명.mp4&amp;nbsp; 로 영상들이 있는 폴더내에 생성됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래와 같이 합치는 과정에 뜨는 메시지가 cmd창에 뜹니다. 노란색 경고내용은 영상 시작 위치가 연속적이지 않을 때 뜨는 내용입니다.&amp;nbsp; ( 안뜨게 하려면 아래 명령어 수정부분 참조)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1115&quot; data-origin-height=&quot;628&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bUveRc/dJMcagcZAqK/jdqjAHFCHjNdMlHztxd0S0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bUveRc/dJMcagcZAqK/jdqjAHFCHjNdMlHztxd0S0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bUveRc/dJMcagcZAqK/jdqjAHFCHjNdMlHztxd0S0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbUveRc%2FdJMcagcZAqK%2FjdqjAHFCHjNdMlHztxd0S0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1115&quot; height=&quot;628&quot; data-origin-width=&quot;1115&quot; data-origin-height=&quot;628&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아무 키나 누르면 아래처럼 최종 mp4 파일의 위치를 안내하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임시파일과 폴더를 삭제할지 묻습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;분할된 파일이나 추출된 부분 영상이 필요한 경우가 아니라면 &amp;nbsp;삭제하는 것이 좋습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;446&quot; data-origin-height=&quot;174&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cxTfZW/dJMcajtXq73/ekHeq2k8V1e23Q9bnDarJ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cxTfZW/dJMcajtXq73/ekHeq2k8V1e23Q9bnDarJ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cxTfZW/dJMcajtXq73/ekHeq2k8V1e23Q9bnDarJ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcxTfZW%2FdJMcajtXq73%2FekHeq2k8V1e23Q9bnDarJ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;446&quot; height=&quot;174&quot; data-origin-width=&quot;446&quot; data-origin-height=&quot;174&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;13. 최종 영상을 확인합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;샘플 추출 영상 (2분마다 2초 추출) - 키프레임 위치가 아니라서 정확히 10분마다 잘려지지는 않았습니다.&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/459932733&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/cCaTnv/hyZPwYlWVF/IYIavFEPdtShu83BQ4HptK/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720,https://scrap.kakaocdn.net/dn/brjxo7/hyZODLaXTI/cEWrJJQRvxQ4QuHadP3eVK/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/459932733?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고: 영상을 2분씩 잘라서 초반 3초 영상을 추출하는 배치 명령어&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1765720988334&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;rem ## for increasing numbers in 4 digit
set sum=1000
setlocal enabledelayedexpansion

rem ## loop each chunk
for %%A in (*.mp4) do (

set /a sum+=1 

rem ## [1000]o000.mp4, [1000]o001.mp4....[1001]o000.mp4, [1001]o001.mp4 ...
ffmpeg -i %%A -movflags use_metadata_tags -c copy -segment_time 00:02:00 -f segment -reset_timestamps 1 -y [!sum!]%%03d.mp4

rem ## loop each child chunk
for %%F in ([!sum!]*.mp4) do (

rem ## _1000_[1000]o000.mp4, _1000_[1000]o001.mp4,....1001_[1001]o000.mp4, 1001_[1001]o001.mp4...
ffmpeg -i %%~F -movflags use_metadata_tags -c copy -to 00:00:03 -y out_%%~nF.mp4 

rem ## delete parent chunk
del %%~F
)

)
rem #done&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VBA코드상의 썸네일 추출 명령 부분 발췌&lt;/p&gt;
&lt;pre id=&quot;code_1765721083988&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;        cmd = Chr(34) &amp;amp; FFMPEG_PATH &amp;amp; Chr(34) &amp;amp; &quot; -ss 00:00:01 -i &quot; &amp;amp; Chr(34) &amp;amp; mPath &amp;amp; mFile &amp;amp; Chr(34) &amp;amp; _
            &quot; -y -vf &quot; &amp;amp; Chr(34) &amp;amp; &quot;thumbnail,scale=320:-1&quot; &amp;amp; Chr(34) &amp;amp; &quot; -update 1 -frames:v 1 &quot; &amp;amp; Chr(34) &amp;amp; tFile &amp;amp; Chr(34)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;타이틀 제목 영상을 생성하는 부분 발췌&lt;/p&gt;
&lt;pre id=&quot;code_1765721154090&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Command = Chr(34) &amp;amp; FFMPEG_PATH &amp;amp; Chr(34) &amp;amp; &quot; -y -i &quot; &amp;amp; Chr(34) &amp;amp; InputFilePath &amp;amp; Chr(34) &amp;amp; _
                &quot; -vf drawbox=color=black:t=fill -af volume=0 -to &quot; &amp;amp; CLIP_DURATION &amp;amp; &quot; &quot; &amp;amp; _
                Chr(34) &amp;amp; OutputFilePath &amp;amp; Chr(34)
                
Command = Chr(34) &amp;amp; FFMPEG_PATH &amp;amp; Chr(34) &amp;amp; &quot; -hide_banner -y -i &quot; &amp;amp; Chr(34) &amp;amp; InputFilePath &amp;amp; Chr(34) &amp;amp; _
                &quot; -vf &quot; &amp;amp; Chr(34) &amp;amp; &quot;[in]drawtext=text='&quot; &amp;amp; BASE_DIR_TITLE &amp;amp; &quot;':&quot; &amp;amp; _
                &quot;fontfile='C\:\\Users\\user\\AppData\\Local\\Microsoft\\Windows\\Fonts\\Paperlogy-5Medium.ttf':&quot; &amp;amp; _
                &quot;fontcolor=white:fontsize=78:x=(w-text_w)/2:y=(h-text_h)/2&quot; _
                &amp;amp; &quot;, drawtext=text='&quot; &amp;amp; Replace(Mid([F2].text, 3), &quot;:&quot;, &quot;\\\:&quot;) &amp;amp; &quot; &quot; &amp;amp; Replace(Mid([G2].text, 3), &quot;:&quot;, &quot;\\\:&quot;) &amp;amp; _
                &quot;':fontcolor=gray@0.3:fontsize=28:x=w-tw-10:y=h-th-10[out]&quot; _
                &amp;amp; Chr(34) &amp;amp; &quot; &quot; &amp;amp; Chr(34) &amp;amp; OutputFilePath &amp;amp; Chr(34)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1차 분할하는 부분 발췌&lt;/p&gt;
&lt;pre id=&quot;code_1765721243235&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;            ' FFmpeg 1차 분할
            ' 출력: BASE_DIR/_Temp_Chunks/[ROW번호]_chunk_001.mp4, 002.mp4...
            Command = Chr(34) &amp;amp; FFMPEG_PATH &amp;amp; Chr(34) &amp;amp; &quot; -y -i &quot; &amp;amp; Chr(34) &amp;amp; InputFilePath &amp;amp; Chr(34) &amp;amp; _
                      &quot; -c copy -segment_time &quot; &amp;amp; SEGMENT_TIME &amp;amp; &quot; -f segment -reset_timestamps 1 -y &quot; &amp;amp; _
                      Chr(34) &amp;amp; ChunkPath &amp;amp; Format(RowIndex - 4, &quot;000&quot;) &amp;amp; &quot;_&quot; &amp;amp; InputFileNameWithoutExt &amp;amp; &quot;_chunk_%03d.mp4&quot; &amp;amp; Chr(34)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2차 추출하는 부분 발췌&lt;/p&gt;
&lt;pre id=&quot;code_1765721269122&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;        ' FFmpeg 2차 추출
        ' 출력: BASE_DIR/_Temp_Final/[청크파일명].mp4            ' -correct_ts_overflow 0
        Command = Chr(34) &amp;amp; FFMPEG_PATH &amp;amp; Chr(34) &amp;amp; _
            &quot; -ss &quot; &amp;amp; StartingTime &amp;amp; _
            &quot; -y -i &quot; &amp;amp; Chr(34) &amp;amp; ChunkFilePath &amp;amp; Chr(34) &amp;amp; _
            &quot; -to &quot; &amp;amp; CLIP_DURATION &amp;amp; _
            &quot; -c copy &quot; &amp;amp; _
            &quot; &quot; &amp;amp; _
            Chr(34) &amp;amp; FinalClipPath &amp;amp; ClipFileNameWithoutExt &amp;amp; &quot;.mp4&quot; &amp;amp; Chr(34)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 여기서 미리 StartingTime = &quot;00:00:00.100&quot;을 주기 때문에 최종 결과에서 노란색 경고가 뜹니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;StartingTime =&quot;&quot; 로 없애면 뜨지 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;StartingTime을 0.1초 지정하면 연속된 영상의 소리가 튀지 않고 연속되는 장점이 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 간혹 영상이 약간 버퍼링이 생기는 점은 단점입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 영상이 길고 파일이 많을수록 작업시간이 길어집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 이상으로 엑셀 자동 랜덤 영상 추출기 소개를 마칩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;긴 영상을 랜덤으로 몇 초씩 추출해서 빠르게 랜덤 영상을 만들 때 이용해보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c8sd8k/dJMcabJwpHM/xpkq8BthoytMoOcKj4ph10/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c8sd8k/dJMcabJwpHM/xpkq8BthoytMoOcKj4ph10/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c8sd8k/dJMcabJwpHM/xpkq8BthoytMoOcKj4ph10/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc8sd8k%2FdJMcabJwpHM%2Fxpkq8BthoytMoOcKj4ph10%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;529&quot; height=&quot;529&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고) 삽입된 상징 이미지들은 Google Gemini 에서 생성하였습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  2026.01.19 &lt;b&gt;추가&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/o4V4j/dJMcahDaa7X/FVGrANSWnnR1f85Rx4Shvk/RandCut11.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;RandCut11.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.08MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 서브 타이틀 삽입 가능 :&amp;nbsp; 메인 타이틀 외에도 중간에 특정 영상 앞에 검은 배경에 부제목 영상을 삽입합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 우클릭 메뉴를 추가 : 마우스 우클릭 &amp;gt; RandCut 메뉴 추가&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_001.png&quot; data-origin-width=&quot;798&quot; data-origin-height=&quot;421&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwUsOC/dJMcajua4ue/yxdNNyvILIln8yYearq6E1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwUsOC/dJMcajua4ue/yxdNNyvILIln8yYearq6E1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwUsOC/dJMcajua4ue/yxdNNyvILIln8yYearq6E1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbwUsOC%2FdJMcajua4ue%2FyxdNNyvILIln8yYearq6E1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;798&quot; height=&quot;421&quot; data-filename=&quot;Img_001.png&quot; data-origin-width=&quot;798&quot; data-origin-height=&quot;421&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;중간 부제목 추가 결과&amp;nbsp; 해당 동영상 바로 위에&amp;nbsp; '중간 부제목' 영상이 추가됩니다. 파일명 뒤에 &quot; Title&quot; 이 붙습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_003.png&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;432&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WRKl9/dJMcahb6e0N/WdRhvjHfJ0VYbGyQRpEW0k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WRKl9/dJMcahb6e0N/WdRhvjHfJ0VYbGyQRpEW0k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WRKl9/dJMcahb6e0N/WdRhvjHfJ0VYbGyQRpEW0k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWRKl9%2FdJMcahb6e0N%2FWdRhvjHfJ0VYbGyQRpEW0k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;746&quot; height=&quot;432&quot; data-filename=&quot;Img_003.png&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;432&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>XLS+VBA</category>
      <category>Random Video</category>
      <category>Split Segment</category>
      <category>랜덤영상</category>
      <category>엑셀</category>
      <category>영상추출</category>
      <category>영상편집</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/342</guid>
      <comments>https://konahn.tistory.com/entry/RandomCut#entry342comment</comments>
      <pubDate>Mon, 15 Dec 2025 00:39:04 +0900</pubDate>
    </item>
    <item>
      <title>엑셀 독립된 새로운 인스턴스로 추가 실행</title>
      <link>https://konahn.tistory.com/entry/ForceExcelToOpenInNewInstance</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_038.png&quot; data-origin-width=&quot;443&quot; data-origin-height=&quot;325&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3ODa9/dJMcajHj3lz/wDFvIzOsKKvqpbynfMyoyk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3ODa9/dJMcajHj3lz/wDFvIzOsKKvqpbynfMyoyk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3ODa9/dJMcajHj3lz/wDFvIzOsKKvqpbynfMyoyk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3ODa9%2FdJMcajHj3lz%2FwDFvIzOsKKvqpbynfMyoyk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;443&quot; height=&quot;325&quot; data-filename=&quot;Img_038.png&quot; data-origin-width=&quot;443&quot; data-origin-height=&quot;325&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;div id=&quot;SE-b797ac00-8603-4854-85ad-05e7186b3869&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-cdd43036-ec04-4bef-8142-54fedc240b26&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;엑셀은 새 문서가 열릴 때 기존 엑셀 인스턴스가 실행중이면&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-1e438c1f-b243-44df-80c8-8a571a1ee14b&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;프로그램을&lt;/span&gt;&lt;span&gt;&lt;b&gt; 통합&lt;/b&gt;&lt;/span&gt;&lt;span&gt;해서 하나의 엑셀 인스턴스에서 파일을 처리하도록 합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-0018116a-cd91-42f7-8fd3-4eceff452188&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;엑셀 인스턴스는 최대 2GB정도의 메모리를 차지하기 때문에 &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이렇게 인스턴스를 통합하도록 고안되었다고 합니다. 다른 오피스 프로그램도 마찬가지입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-abbddf9a-f05c-4724-bfc5-22dc785576ee&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;문제는 하나의 프로그램으로 두 개의 파일을 처리하게 된 결과 &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-c40eb91c-61f7-4e28-862d-6ebed67a4502&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;한 쪽에서 채우기 색상을 바꾸면 다른 창의 인터페이스에도 영향을 미치게 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-71bebdfe-ab24-4cd2-859a-76d9391a75e8&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;상태표시줄 표시도 선택된 하나의 창에만 나오게 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-e323219d-c928-4057-b8f9-6328a637768a&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-16049acf-b170-489c-99df-7c1796b2369a&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이 문제를 해결하려면 엑셀 프로그램이 하나로 합쳐지지 않게 해야 합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-8bfab56d-df9e-46d5-9b43-a51cfdee6379&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-e916cde9-bd0c-4bbd-911e-df14dd3a115c&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아래처럼 레지스트리를 설정해서 항상 매 파일마다 독립적으로 실행할 수도 있습니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-23fc8920-8040-4b11-80db-994c0bf7a9ca&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;a href=&quot;https://learn.microsoft.com/en-us/troubleshoot/microsoft-365-apps/excel/force-excel-to-open-new-instance&quot;&gt;https://learn.microsoft.com/en-us/troubleshoot/microsoft-365-apps/excel/force-excel-to-open-new-instance&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-d852c175-e4b8-4e9d-a09c-930f534c5bc1&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그런데 위 방법은 메모리 부담이 커지게 됩니다. &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-2a493d93-742c-40be-a764-8bf522ebfd9a&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그보다는 아래처럼 필요할 때 독립적으로 엑셀 인스턴스를 추가로 시작하도록 하세요.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-4e02a7ea-dc4c-491f-b691-30fe825b7ef1&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&amp;gt;&amp;gt; 먼저 엑셀을 실행하고 상태표시줄의 &lt;/span&gt;&lt;span&gt;&lt;b&gt;엑셀창 제목 우클릭&lt;/b&gt;&lt;/span&gt;&lt;span&gt; &amp;gt;&lt;/span&gt;&lt;span&gt;&lt;b&gt; Excel을 Alt+클릭&lt;/b&gt;&lt;/span&gt;&lt;span&gt; 후 &lt;/span&gt;&lt;span&gt;&lt;b&gt;새 엑셀 인스턴스 시작&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-31a1b83c-f344-4346-94fd-3a18e7ccd4f7&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;306&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czcFoa/dJMcain6XVc/6I2E42pkUCZkqxZjJIlDF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czcFoa/dJMcain6XVc/6I2E42pkUCZkqxZjJIlDF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czcFoa/dJMcain6XVc/6I2E42pkUCZkqxZjJIlDF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczcFoa%2FdJMcain6XVc%2F6I2E42pkUCZkqxZjJIlDF0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;750&quot; height=&quot;306&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;306&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-3af45d93-5077-4b3b-8e45-580d136a5ada&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-c459aef3-788f-41be-b526-19235263701f&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그러면 서로 영향을 미치지 않아 (서로 다른 프로그램 ID를 가져서)&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-9bd98994-4566-4da2-bf08-15caddfed2af&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;독립적으로 사용 가능하고 두 가지 문제 모두 해결됩니다. 단, 메모리는 더 많이 사용하게 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-c8c4f4cf-44fb-4f77-b4de-a7dce519838f&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-f997123e-23f3-4f0b-9949-93535fc24c07&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;당연한 이야기이지만 365나 2024버전 엑셀과 구버전 2010, 2013버전을 두 개 따로 실행하는 방법도 가능합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-d293f138-26f4-47f5-a94b-e3ff3f1a8a4c&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이 방법은 엑셀에서만 작동하고 파워포인트나 워드는 작동하지 않습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;참고: &lt;a href=&quot;https://kin.naver.com/qna/detail.naver?d1id=1&amp;amp;dirId=102020101&amp;amp;docId=490044383&amp;amp;answerNo=2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;지식인&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
      <category>Else</category>
      <category>Excel</category>
      <category>New Instance</category>
      <category>독립실행</category>
      <category>새 창</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/341</guid>
      <comments>https://konahn.tistory.com/entry/ForceExcelToOpenInNewInstance#entry341comment</comments>
      <pubDate>Sat, 8 Nov 2025 21:19:08 +0900</pubDate>
    </item>
    <item>
      <title>슬라이드쇼에서 엔터를 치면 무조건 다음 슬라이드로 이동</title>
      <link>https://konahn.tistory.com/entry/Jump2Next</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;261&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oUE4B/dJMcac2uIjR/0LqSujnyk8tsS1RIWUf4f1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oUE4B/dJMcac2uIjR/0LqSujnyk8tsS1RIWUf4f1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oUE4B/dJMcac2uIjR/0LqSujnyk8tsS1RIWUf4f1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoUE4B%2FdJMcac2uIjR%2F0LqSujnyk8tsS1RIWUf4f1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;601&quot; height=&quot;174&quot; data-origin-width=&quot;902&quot; data-origin-height=&quot;261&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-d4eec970-739a-4272-841f-585b785745f3&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-cf812101-7222-486a-b34d-0a427b61af01&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;파워포인트 슬라이드쇼에서 &amp;lt;엔터&amp;gt;를 치면 애니메이션이 중단되고 다음 애니메이션으로 넘어갑니다. 더이상 애니메이션이 없으면 다음 슬라이드로 넘어갑니다. 이것은 파워포인트 슬라이드쇼의 정상적인 동작입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-c28eaf6e-1b70-4836-baf4-fb35d6041080&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-9e30f9ea-5327-4802-ac5b-632fa125e1f2&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이 때 슬라이드쇼에서 &amp;lt;엔터&amp;gt;를 치면 애니메이션이션이 있더라도 무조건 다음 슬라이드로 넘어가는 것을 원하는 경우입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-b13bd1da-bcde-466d-8e2b-a03b4810bdf7&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-867bfb85-13d3-4c9f-8382-664d49fb4647&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;1. 단순한 방법은 키보드 대신 특정부분을 마우스를 클릭해서 다른 슬라이드로 가도록 따로 하이퍼링크를 추가하는 것이 간단한 방법입니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-df2ee084-090e-4065-a1f6-4b2960837f89&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;385&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/BCTLx/dJMcafSr4PZ/s3UwV1MvmhRz83VJbC7yK1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/BCTLx/dJMcafSr4PZ/s3UwV1MvmhRz83VJbC7yK1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/BCTLx/dJMcafSr4PZ/s3UwV1MvmhRz83VJbC7yK1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBCTLx%2FdJMcafSr4PZ%2Fs3UwV1MvmhRz83VJbC7yK1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;417&quot; height=&quot;214&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;385&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-0fa3241e-19cb-4d71-8a3a-508db2d4769e&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-fdda6225-fa1a-40a4-88b5-b29565fc7d75&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;슬라이드 마스터 레이아웃에 링크를 넣어두고 모든 슬라이드에 적용하면 일괄로 처리 가능합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-8e3646fb-ca33-4fd1-bd14-89d97ef72e76&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;하이퍼링크가 보이는 것 그리고 마우스 클릭으로 넘어가는 점이 단점입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-3538c512-5e1e-410a-8c1b-2c77ea31a6be&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-4ea3c4da-edf4-4384-971b-b01a673c4aa9&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;2. 아니면 외부 프로그램이나 VBA의 도움을 받아야 합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-638a845f-0257-43ed-aa87-ec9c955926eb&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-e7cf8cfb-d023-47f9-bfd7-9cfff7a3151e&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;VBA로 하려면 실시간으로 키보드 입력을 감시하는 코드가 필요해서 복잡해지므로&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-6bd7d6a1-aa42-411d-9598-36490a094c80&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;외부 Autohotkey 프로그램을 이용해보겠습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-264f0e01-5c81-4d58-96c3-09b9e8e23d7c&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-05fdfb4e-d9ed-4ef5-95b8-e4383557b80d&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아래와 같은 오토핫키 코드로 단축키 프로그램을 실행해 놓으면&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-b2ace00b-b7af-4262-bd05-eee7e486c9ad&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;엔터키가 눌리면 바로 다음 슬라이드로 넘어가게 할 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-687bb664-03a0-402a-a651-023087c092c9&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;주요부분:&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;pre id=&quot;code_1762498460469&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#IfWinActive, ahk_class screenClass ;frameClass
$ENTER::
	try {
		App := ComObjActive(&quot;PowerPoint.Application&quot;)
		Prs := App.ActivePresentation
		pos := Prs.SlideShowWindow.View.CurrentShowPosition + 1
		if ( pos &amp;lt;= Prs.Slides.Count ) {
			App.SlideShowWindows(1).View.GotoSlide(pos, -1) 
		;Sleep, 100
		}
	}
	catch e {
		;no ppt
		if (!app) {
			MSgBox, PPT application not found.
		}
		else {
			MsgBox, % e.Message
		}	
	}
 
return&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-4a65d3b7-c104-4472-a2dc-3c42e55b6a25&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-706f59d5-a1c4-4493-ae6a-35cf6fa1b7ce&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;첨부파일 EXE를 실행하면 아래 창이 뜹니다. 확인을 누르면 상태표시줄로 최소화됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-cf92603f-1b2f-483e-bf05-0e7f92aeaeef&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;684&quot; data-origin-height=&quot;286&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/csd6Dn/dJMcajHjGMb/krTWjaImjfcpFyGH0THlOK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/csd6Dn/dJMcajHjGMb/krTWjaImjfcpFyGH0THlOK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/csd6Dn/dJMcajHjGMb/krTWjaImjfcpFyGH0THlOK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcsd6Dn%2FdJMcajHjGMb%2FkrTWjaImjfcpFyGH0THlOK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;380&quot; height=&quot;159&quot; data-origin-width=&quot;684&quot; data-origin-height=&quot;286&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-d731025a-ec07-4e83-9114-e344993f41a5&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-656611c6-6024-4aa9-bee3-680280857928&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-cfc11a05-ff02-4db4-b50c-bcab06952595&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;이제 슬라이드쇼에서 엔터를 치면 애니메이션이 진행중이어도 바로 다음 슬라이드로 진행합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-a85b7200-0e5b-4a1a-ad0e-3572534b7dd2&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;스페이스나 방향키는 기존대로 다음 애니메이션단계로 넘어갑니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-7b3f425c-09fe-4255-8988-11d8581c22f9&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-2389e657-b31a-4c88-b4cb-ad432f788516&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아래 예시에서 1슬라이드에서 스페이스키를 누르면 다음 애니메이션 단계로 가서 멈추지만&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-ff5f4f43-5025-42d5-ae9c-14320137ab36&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;2슬라이드에서 엔터를 누르면 바로 다음 3슬라이드로 넘어갑니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-fabda297-8f99-4c7d-8f3b-cba258c01389&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;10,11,12 슬라이드도 애니메이션이 올라오지만 엔터키를 눌러서 바로 다음 슬라이드로 넘어갑니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-d4413a4c-b27b-4d8f-bf8f-37410f18544c&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;418&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c2rhOM/dJMcagqh0Lm/siKzYDRvsN5L4U8yREOInk/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c2rhOM/dJMcagqh0Lm/siKzYDRvsN5L4U8yREOInk/img.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c2rhOM/dJMcagqh0Lm/siKzYDRvsN5L4U8yREOInk/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/c2rhOM/dJMcagqh0Lm/siKzYDRvsN5L4U8yREOInk/img.gif&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;750&quot; height=&quot;418&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;418&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-be51bb40-06e5-41a6-929b-42d57982fdfc&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-396f7af5-94b2-4490-bfae-15a6e4f7b422&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;현재 일반 파워포인트 슬라이드쇼와 발표자 보기에서 작동합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-d895cae5-bae1-4bb6-bda4-841d14ccabd7&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;(창 클래스 이름이 달라서 웹형식 보기에서는 지원하지 않습니다.)&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-97610482-0f45-4a10-8773-8d086934cacf&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-0ef12dea-46af-4722-a8ec-247f9c51d0c0&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;첨부파일 참고하세요.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/uQoAz/dJMcajUQRZH/MbYes1KioZiKP9KA1SvV0K/Jump2Next.ahk?attach=1&amp;amp;knm=tfile.ahk&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Jump2Next.ahk&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bs1FQF/dJMcaestoLV/1JwKERebmcNS0jvKKnjv5K/Jump2Next.exe?attach=1&amp;amp;knm=tfile.exe&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Jump2Next.exe&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;1.20MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;관련: &lt;a href=&quot;https://kin.naver.com/qna/detail.naver?d1id=1&amp;amp;dirId=102020103&amp;amp;docId=490001057#answer1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;지식인&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좀 더 범용으로 사용할 수 있게 변경한 버전입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;바로 이전 슬라이드는 PgUp,&lt;/li&gt;
&lt;li&gt;바로 다음 슬라이드는 PgDn,&lt;/li&gt;
&lt;li&gt;마지막으로 본 슬라이드는 BackSpace 키&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(애니메이션 초기화하지 않습니다. 이동 후 멈췄던 애니메이션부터 시작합니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1762831011199&quot; class=&quot;csharp&quot; data-ke-language=&quot;csharp&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
#SingleInstance
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
 
	WinSetTitle, Jump2
	
	MsgBox,0x40,Jump2,During a Powerpoint SlideShow`,`nhit &amp;lt;PgUp&amp;gt;/&amp;lt;PgDn&amp;gt; to directly jump to the prev/next slide or `nhit &amp;lt;BackSpace&amp;gt; to go back to the last slide viewed`n`nHit &amp;lt;Win+X&amp;gt; to quit this hotkey,15
	
	if (%A_IsCompiled%)  {
		Menu, Tray, Icon, %A_ScriptName%, 1
	}
	Menu, Tray, NoStandard
	Menu, Tray, Add, Exit, ExitMenu
 
return
 

#IfWinActive, ahk_class screenClass ;frameClass
$PGDN::
	try {
		App := ComObjActive(&quot;PowerPoint.Application&quot;)
		Prs := App.ActivePresentation
		pos := Prs.SlideShowWindow.View.CurrentShowPosition + 1
		if ( pos &amp;lt;= Prs.Slides.Count ) {
			App.SlideShowWindows(1).View.GotoSlide(pos, 0) ;, -1) 
		}
	}
	catch e {
		;no ppt
		if (!app) {
			MSgBox, PPT application not found.
		}
		else {
			MsgBox, % e.Message
		}	
	}
 
return

$PGUP::
	try {
		App := ComObjActive(&quot;PowerPoint.Application&quot;)
		Prs := App.ActivePresentation
		pos := Prs.SlideShowWindow.View.CurrentShowPosition - 1
		if ( pos &amp;gt;= 1 ) {
			App.SlideShowWindows(1).View.GotoSlide(pos, 0)	;, -1) 
		}
	}	
	catch e {
		;no ppt
		if (!app) {
			MSgBox, PPT application not found.
		}
		else {
			MsgBox, % e.Message
		}	
	}
 
return

$BACKSPACE::
	try {
		App := ComObjActive(&quot;PowerPoint.Application&quot;)
		Prs := App.ActivePresentation
		pos := Prs.SlideShowWindow.View.LastSlideViewed.SlideIndex 
		App.SlideShowWindows(1).View.GotoSlide(pos, 0)	;, -1) 
	}	
	catch e {
		;no ppt
		if (!app) {
			MSgBox, PPT application not found.
		}
		else {
			MsgBox, % e.Message
		}	
	}
 
return


#IfWinActive
ExitMenu:
#x::
exitapp&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/c8WQOg/dJMcacuFXjJ/Lmc6dBTSFXGDJYM448UnUk/Jump2.exe?attach=1&amp;amp;knm=tfile.exe&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Jump2.exe&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;1.20MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/4XA9a/dJMcaesuxg6/AQqVR7GLF37sWg3KJXB1dk/Jump2.ahk?attach=1&amp;amp;knm=tfile.ahk&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Jump2.ahk&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.00MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1005&quot; data-origin-height=&quot;557&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IapwP/dJMcah3NS5z/rzpnmfSuM4uDZFhtPkaGQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IapwP/dJMcah3NS5z/rzpnmfSuM4uDZFhtPkaGQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IapwP/dJMcah3NS5z/rzpnmfSuM4uDZFhtPkaGQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIapwP%2FdJMcah3NS5z%2FrzpnmfSuM4uDZFhtPkaGQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;541&quot; height=&quot;300&quot; data-origin-width=&quot;1005&quot; data-origin-height=&quot;557&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>AutoHotKey</category>
      <category>GoToSlide</category>
      <category>Jump to next slide</category>
      <category>last viewed</category>
      <category>NEXT</category>
      <category>NextSlide</category>
      <category>prev</category>
      <category>SlideshowNextSlide</category>
      <category>SlideShowPrevSlide</category>
      <category>without animation</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/340</guid>
      <comments>https://konahn.tistory.com/entry/Jump2Next#entry340comment</comments>
      <pubDate>Fri, 7 Nov 2025 16:08:05 +0900</pubDate>
    </item>
    <item>
      <title>[엑셀+PPT] 초성게임 자동 생성기</title>
      <link>https://konahn.tistory.com/entry/ChosungQuiz</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난번 &lt;a href=&quot;https://konahn.tistory.com/entry/WordJumble2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Word Jumble 게임&lt;/a&gt;을 약간만 수정해서 초성게임 생성기를 만들어 보았습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;그림1.png&quot; data-origin-width=&quot;894&quot; data-origin-height=&quot;732&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bD8qLp/dJMcajUNSBl/4csLHU2BuKtsacSp89M9Gk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bD8qLp/dJMcajUNSBl/4csLHU2BuKtsacSp89M9Gk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bD8qLp/dJMcajUNSBl/4csLHU2BuKtsacSp89M9Gk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbD8qLp%2FdJMcajUNSBl%2F4csLHU2BuKtsacSp89M9Gk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;431&quot; height=&quot;353&quot; data-filename=&quot;그림1.png&quot; data-origin-width=&quot;894&quot; data-origin-height=&quot;732&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래픽은 구글 Gemini를 여러번 혹독하게 훈련시키고 수정해서 생성하였습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;글자순서를 섞는 대신 한글의 초성만 제시하고 단어나 문구 전체를 맞추게합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;특징:&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;엑셀+PPT조합으로 단어나 한글만 목록으로 작성하면 초성 슬라이드는 알아서 생성해줍니다.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;Bomb Game 방식으로 랜덤 문제를 참여자가 선택해서 고르므로 복불복게임이 됩니다.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;최종 PPT는 VBA를 사용하지 않아도 힌트기능이나 팀별 점수판까지 작동가능합니다.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;엑셀+PPT조합이기 때문에 목록만 만들면 초성퀴즈를 대량으로 생성 가능합니다. 문제 슬라이드 템플릿을 미리 수정해서 다른 디자인이나 애니메이션으로 만들 수도 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;시연 영상:&lt;/b&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/458894840&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/Y58yd/hyZMQaUWZP/1hIKvcnjtDG7mc9f5Ah8FK/img.jpg?width=1843&amp;amp;height=1080&amp;amp;face=0_0_1843_1080,https://scrap.kakaocdn.net/dn/bib9I0/hyZMRHFhpH/YMADVDxLQ5f01EDIKoqrU1/img.jpg?width=1843&amp;amp;height=1080&amp;amp;face=0_0_1843_1080&quot; data-video-width=&quot;860&quot; data-video-height=&quot;504&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;504&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/458894840?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;504&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;샘플파일1:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/8Po8v/dJMcaboVSpE/EFyZUOXX8vjr0TlM42h70K/CommonWords_Kor.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;CommonWords_Kor.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.03MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/snmik/dJMcadNOShY/rBF37KvSmlb7UtkEVmbDKK/%EC%B4%88%EC%84%B1%ED%80%B4%EC%A6%881.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;초성퀴즈1.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;3.19MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게임 진행 방식은 Word Jumble 과 같습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 샘플은 7 * 6 = 42개의 문제를 출제합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;엑셀 파일&lt;/b&gt;이 필요합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;별다른 양식이 아니라 A2셀부터 아래로 단어 목록을 나열하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_036.png&quot; data-origin-width=&quot;455&quot; data-origin-height=&quot;594&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vspGw/dJMcadmKufT/lO15iATCApSLBFP3oXpRX0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vspGw/dJMcadmKufT/lO15iATCApSLBFP3oXpRX0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vspGw/dJMcadmKufT/lO15iATCApSLBFP3oXpRX0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvspGw%2FdJMcadmKufT%2FlO15iATCApSLBFP3oXpRX0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;306&quot; height=&quot;399&quot; data-filename=&quot;Img_036.png&quot; data-origin-width=&quot;455&quot; data-origin-height=&quot;594&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;샘플 xlsm 파일에서 Alt+F8 &amp;gt; Random36 매크로를 실행해서 랜덤단어를 추출할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_050.png&quot; data-origin-width=&quot;1179&quot; data-origin-height=&quot;608&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/djbzwX/dJMcajAvoit/sAyezmFkv1hJkglozLgT8K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/djbzwX/dJMcajAvoit/sAyezmFkv1hJkglozLgT8K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/djbzwX/dJMcajAvoit/sAyezmFkv1hJkglozLgT8K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdjbzwX%2FdJMcajAvoit%2FsAyezmFkv1hJkglozLgT8K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;716&quot; height=&quot;369&quot; data-filename=&quot;Img_050.png&quot; data-origin-width=&quot;1179&quot; data-origin-height=&quot;608&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단어 개수는 나중에 Bomb Game에서 생성될 버튼 수를 고려하는 것이 좋습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;샘플의 매크로는 현재 4글자 단어 7개, 5글자 단어 7개, 6글자 7개, 7글자 7개, 8글자 7개, 9글자 7개로 총 6 * 7= 42개의 단어를 추출합니다. 코드상에서 cs 와 rs 값을 변경하면 원하는 개수대로 추출이 가능합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Bomb 게임에서도 가로 7개, 세로 6행으로 문제로 이어지는 숫자 버튼이 생성될 예정입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(버튼을 생성할 때 대화창이 뜨는데 이 때 버튼 개수를 임의로 변경 가능합니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_037.png&quot; data-origin-width=&quot;2401&quot; data-origin-height=&quot;1126&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ljhGo/dJMcafSo3v3/s3sE4xZtDsLyhMxmA3kOlk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ljhGo/dJMcafSo3v3/s3sE4xZtDsLyhMxmA3kOlk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ljhGo/dJMcafSo3v3/s3sE4xZtDsLyhMxmA3kOlk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FljhGo%2FdJMcafSo3v3%2Fs3sE4xZtDsLyhMxmA3kOlk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2401&quot; height=&quot;1126&quot; data-filename=&quot;Img_037.png&quot; data-origin-width=&quot;2401&quot; data-origin-height=&quot;1126&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제 슬라이드가 자동으로 생성되는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미리 문제 슬라이드를 수정하고 A_Main 매크로를 실행합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3슬라이드&lt;/b&gt;가 문제 슬라이드의 템플릿 즉, 기준 슬라이드입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 문제로 제시될 텍스트상자의 폰트나 글자크기, 색상, 애니메이션을 수정할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_038.png&quot; data-origin-width=&quot;2267&quot; data-origin-height=&quot;1094&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dhzR6P/dJMcafERQXe/pAmWRoqKyOra1kvT7dRkBk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dhzR6P/dJMcafERQXe/pAmWRoqKyOra1kvT7dRkBk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dhzR6P/dJMcafERQXe/pAmWRoqKyOra1kvT7dRkBk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdhzR6P%2FdJMcafERQXe%2FpAmWRoqKyOra1kvT7dRkBk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2267&quot; height=&quot;1094&quot; data-filename=&quot;Img_038.png&quot; data-origin-width=&quot;2267&quot; data-origin-height=&quot;1094&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;답으로 나타날 텍스트상자도 마찬가지로 미리 수정하면 반영됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나머지 도형이나 애니메이션도 수정 가능합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 매크로를 하나만 실행하면 모든 작업은 일괄로 자동 처리됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Alt+F8 &amp;gt;&lt;b&gt; A_Main&lt;/b&gt; 을 실행합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_039.png&quot; data-origin-width=&quot;582&quot; data-origin-height=&quot;715&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bWoPWJ/dJMcacVF8Af/wZd0GkqWHKuMibeS5RJcm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bWoPWJ/dJMcacVF8Af/wZd0GkqWHKuMibeS5RJcm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bWoPWJ/dJMcacVF8Af/wZd0GkqWHKuMibeS5RJcm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbWoPWJ%2FdJMcacVF8Af%2FwZd0GkqWHKuMibeS5RJcm0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;410&quot; height=&quot;504&quot; data-filename=&quot;Img_039.png&quot; data-origin-width=&quot;582&quot; data-origin-height=&quot;715&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 나서 단어 목록이 들어 있는 &lt;b&gt;엑셀 파일을 선택&lt;/b&gt;합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_040.png&quot; data-origin-width=&quot;1418&quot; data-origin-height=&quot;730&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bxHIxO/dJMcagRjmZ3/6eOT0OzolyCu36YRhHRoq0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bxHIxO/dJMcagRjmZ3/6eOT0OzolyCu36YRhHRoq0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bxHIxO/dJMcagRjmZ3/6eOT0OzolyCu36YRhHRoq0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbxHIxO%2FdJMcagRjmZ3%2F6eOT0OzolyCu36YRhHRoq0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;342&quot; data-filename=&quot;Img_040.png&quot; data-origin-width=&quot;1418&quot; data-origin-height=&quot;730&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Questions 구역에 &lt;b&gt;문제 슬라이드가 생성&lt;/b&gt;됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_042.png&quot; data-origin-width=&quot;1285&quot; data-origin-height=&quot;854&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LrHSw/dJMb995INwt/fy9bxL0qfgbhQPJlU9qk71/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LrHSw/dJMb995INwt/fy9bxL0qfgbhQPJlU9qk71/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LrHSw/dJMb995INwt/fy9bxL0qfgbhQPJlU9qk71/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLrHSw%2FdJMb995INwt%2Ffy9bxL0qfgbhQPJlU9qk71%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1285&quot; height=&quot;854&quot; data-filename=&quot;Img_042.png&quot; data-origin-width=&quot;1285&quot; data-origin-height=&quot;854&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 다음 Bomb Game 버튼 생성을 위해 &lt;b&gt;버튼 가로 세로 개수&lt;/b&gt;를 묻습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본 숫자 그대로 확인 누르면 됩니다. 원할 경우 여기서 원하는&amp;nbsp; 숫자로 변경합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본값으로&amp;nbsp; 가로:세로가 비슷하도록 개수를 추천합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_041.png&quot; data-origin-width=&quot;798&quot; data-origin-height=&quot;416&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/It7bO/dJMcagw0AHm/xOVFk9lVKFzuCIhUj8k1JK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/It7bO/dJMcagw0AHm/xOVFk9lVKFzuCIhUj8k1JK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/It7bO/dJMcagw0AHm/xOVFk9lVKFzuCIhUj8k1JK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIt7bO%2FdJMcagw0AHm%2FxOVFk9lVKFzuCIhUj8k1JK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;576&quot; height=&quot;300&quot; data-filename=&quot;Img_041.png&quot; data-origin-width=&quot;798&quot; data-origin-height=&quot;416&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래처럼 7 * 6 개의 숫자 &lt;b&gt;버튼이 생성&lt;/b&gt;됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1행의 7개는 가장 쉬운 4글자 단어로 링크되고, 2행의 7개는 다음 5글자 단어로 링크,....6행의 7개는 가장 어려운 9글자 단어로 링크됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_043.png&quot; data-origin-width=&quot;2246&quot; data-origin-height=&quot;1038&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/q2bwR/dJMcaiVTAAZ/4C3nCVM1y0kS0yux4x4pm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/q2bwR/dJMcaiVTAAZ/4C3nCVM1y0kS0yux4x4pm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/q2bwR/dJMcaiVTAAZ/4C3nCVM1y0kS0yux4x4pm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fq2bwR%2FdJMcaiVTAAZ%2F4C3nCVM1y0kS0yux4x4pm0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2246&quot; height=&quot;1038&quot; data-filename=&quot;Img_043.png&quot; data-origin-width=&quot;2246&quot; data-origin-height=&quot;1038&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;랜덤으로 적용된 색상이 맘에 들지 않으면 &lt;b&gt;D_ButtonColor&lt;/b&gt; 매크로를 여러번 실행할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;몇개마다 색상을 변경할지 묻습니다. 열 개수를 입력하면 2열마다 색상이 달라지게 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1개를 입력하면 계속 색상이 번갈아 가면서 반복되겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;14를 입력하면 두 줄마다 색상이 달라집니다. 총 개수보다 크게 입력하면 모두 같은 색상으로 만듭니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_044.png&quot; data-origin-width=&quot;1716&quot; data-origin-height=&quot;970&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b0GZWG/dJMcaboVR4F/V5oSSzrFNMJLyxIIhXDyIk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b0GZWG/dJMcaboVR4F/V5oSSzrFNMJLyxIIhXDyIk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b0GZWG/dJMcaboVR4F/V5oSSzrFNMJLyxIIhXDyIk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb0GZWG%2FdJMcaboVR4F%2FV5oSSzrFNMJLyxIIhXDyIk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1716&quot; height=&quot;970&quot; data-filename=&quot;Img_044.png&quot; data-origin-width=&quot;1716&quot; data-origin-height=&quot;970&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_046.png&quot; data-origin-width=&quot;1715&quot; data-origin-height=&quot;967&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/L02ZH/dJMcajN2hF7/BPm9yYvDJQ1xkASkzjKFu0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/L02ZH/dJMcajN2hF7/BPm9yYvDJQ1xkASkzjKFu0/img.png&quot; data-alt=&quot;1을 입력한 경우 색상이 번갈아 반복됩니다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/L02ZH/dJMcajN2hF7/BPm9yYvDJQ1xkASkzjKFu0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FL02ZH%2FdJMcajN2hF7%2FBPm9yYvDJQ1xkASkzjKFu0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1715&quot; height=&quot;967&quot; data-filename=&quot;Img_046.png&quot; data-origin-width=&quot;1715&quot; data-origin-height=&quot;967&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;1을 입력한 경우 색상이 번갈아 반복됩니다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고로 매크로 코드 창에서 Select SimilarColor 매크로를 실행해서 현재 선택한 도형과&amp;nbsp; 같은 색상 도형을 모두 선택해서 색상을 바꿀 수도 있습니다. &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;Select SimilarName 매크로를 이용하면 모든 버튼 도형만 한 번에 선택이 가능합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_047.png&quot; data-origin-width=&quot;1817&quot; data-origin-height=&quot;704&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/blueRS/dJMcafdNwUe/mjDzOgSHBR4cxBhkv4JyJ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/blueRS/dJMcafdNwUe/mjDzOgSHBR4cxBhkv4JyJ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/blueRS/dJMcafdNwUe/mjDzOgSHBR4cxBhkv4JyJ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblueRS%2FdJMcafdNwUe%2FmjDzOgSHBR4cxBhkv4JyJ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1817&quot; height=&quot;704&quot; data-filename=&quot;Img_047.png&quot; data-origin-width=&quot;1817&quot; data-origin-height=&quot;704&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 작업이 완료되었으므로 &lt;b&gt;슬라이드쇼&lt;/b&gt;로 확인해봅니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8*6=48개짜리로 하나 더 샘플을 만들었습니다. 자동화매크로이므로 대량 생성이 가능합니다.&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/458895654&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/goaih/hyZMd6Eefd/3stqQmojfZeZcjW2mAib61/img.jpg?width=1843&amp;amp;height=1080&amp;amp;face=0_0_1843_1080,https://scrap.kakaocdn.net/dn/oQDaR/hyZLgbsaXw/TWUs2tNMvOqgWvJfS5jZdK/img.jpg?width=1843&amp;amp;height=1080&amp;amp;face=0_0_1843_1080&quot; data-video-width=&quot;860&quot; data-video-height=&quot;504&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;504&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/458895654?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;504&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;샘플 파일2:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/3acFS/dJMcafrkH42/WU0BKRfJatJRSAdyn20KB0/CommonWords_Kor1.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;CommonWords_Kor1.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.03MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bgcDzj/dJMcaboVSpf/8v9r0TL43LncpkhPFKDrK0/%EC%B4%88%EC%84%B1%ED%80%B4%EC%A6%882.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;초성퀴즈2.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;3.39MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;점수 슬라이드 추가 버전&lt;/b&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제슬라이드에서 오른쪽 아래에 Time's up 그림을 누르면 맨 마지막 점수 슬라이드로 이동합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;돌아가기 버튼을 누르면 이전 버전 처럼 숫자버튼 선택 슬라이드로 돌아갑니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_052.png&quot; data-origin-width=&quot;1748&quot; data-origin-height=&quot;1060&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UoSXw/dJMcahioBzb/40lm2qQyGFtRBnwDGsSv5K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UoSXw/dJMcahioBzb/40lm2qQyGFtRBnwDGsSv5K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UoSXw/dJMcahioBzb/40lm2qQyGFtRBnwDGsSv5K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUoSXw%2FdJMcahioBzb%2F40lm2qQyGFtRBnwDGsSv5K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1748&quot; height=&quot;1060&quot; data-filename=&quot;Img_052.png&quot; data-origin-width=&quot;1748&quot; data-origin-height=&quot;1060&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;F_TeamSocre라는 코드가 추가되었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존에 만들었던 애니메이션 점수판 (&amp;nbsp; &lt;a href=&quot;https://konahn.tistory.com/entry/ScoreBoardAnimation&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://konahn.tistory.com/entry/ScoreBoardAnimation&lt;/a&gt; ) 을 이용했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;트리거 애니메이션을 이용해서 매크로가 필요 없는 것이 특징입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_053.png&quot; data-origin-width=&quot;1019&quot; data-origin-height=&quot;770&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rxJgv/dJMcacuCGHH/7XhNvEYPhrP0w2MirlaJN1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rxJgv/dJMcacuCGHH/7XhNvEYPhrP0w2MirlaJN1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rxJgv/dJMcacuCGHH/7XhNvEYPhrP0w2MirlaJN1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrxJgv%2FdJMcacuCGHH%2F7XhNvEYPhrP0w2MirlaJN1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;606&quot; height=&quot;458&quot; data-filename=&quot;Img_053.png&quot; data-origin-width=&quot;1019&quot; data-origin-height=&quot;770&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;점수판을 만들 때 팀의 개수와 최고 점수를 입력합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5,10으로 입력하면 5개조로 최대 10점까지 생성됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;너무 높은 점수는 트리거 애니메이션이 버벅이게 되니 주의하세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추후에 다시 F_TeamScore를 실행해서 팀개수나 최대 점수를 수정해서 다시 만들 수도 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(주의: 슬라이드 마스터의 3번째 레이아웃에서 정답/오답 소리파일과 되돌아가기 아이콘을 복사해옵니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;점수판 슬라이드에서 각 조 이름을 클릭하면 점수가 +1 추가되고 추가된 맨 위 점수 도형을 클릭하면 다시 -1 감점할 수 있습니다. 숫자버튼 메인 슬라이드에서 오른쪽 상단에 추가된 점수판 아이콘을 눌러도 점수판 슬라이드로 이동할 수 있습니다. 점수판 슬라이드는 마지막에 5번째 구역을 추가해서 맨 마지막&amp;nbsp; 슬라이드로 추가됩니다. Module3의 ChangeColor 매크로로 팀별 색깔을 랜덤으로 변경하거나 직접 수정이 가능합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실행화면:&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/458961118&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/f41iA/hyZLgQhDtP/JoahmAYYc8J0nTwynhGk1K/img.jpg?width=1843&amp;amp;height=1080&amp;amp;face=0_0_1843_1080,https://scrap.kakaocdn.net/dn/uMTtF/hyZMM1mDiJ/bui28PSZeRRdJG1zcAGWwk/img.jpg?width=1843&amp;amp;height=1080&amp;amp;face=0_0_1843_1080&quot; data-video-width=&quot;860&quot; data-video-height=&quot;504&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;504&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/458961118?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;504&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;샘플파일3(점수 슬라이드 추가 버전):&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/cg8E10/dJMcabbpBBG/Khj0471ibtOk2iQKtNuTu1/%EC%B4%88%EC%84%B1%ED%80%B4%EC%A6%883.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;초성퀴즈3.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;3.63MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;기타:&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;이 프레젠테이션에는 사용된 한글 폰트는 렉시굴림 폰트입니다.&lt;br /&gt;&lt;a href=&quot;https://offree.net/2234&quot;&gt;https://offree.net/2234&lt;/a&gt;&lt;br /&gt;렉시굴림 도도 수정본&lt;br /&gt;&lt;a href=&quot;https://blog.naver.com/slayers_dodo/220767325724&quot;&gt;https://blog.naver.com/slayers_dodo/220767325724&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Bomb Game 만들 때 필요한 유용한 매크로는 Private 선언을 해서 Alt+F8눌렀을 때 뜨지 않습니다. 직접 코드상에서 녹색 플레이 버튼을 눌러서 실행해야 합니다. 유용한 매크로가 많이 들어 있습니다.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Module2의 유용한 매크로 목록:&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dna/bXB1ZX/dJMcaaXRwpd/AAAAAAAAAAAAAAAAAAAAAHgPUAWPwHmM1rBXVmOGXPIKHWhCmDYiEaozlWFjQIrS/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1761922799&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=H2%2BHrIBYNWNjfJsYbo8Zdk3zgfY%3D&quot; width=&quot;618&quot; height=&quot;467&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;777&quot; data-origin-height=&quot;587&quot; data-filename=&quot;Img_048.png&quot; /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Bomb Game 형식이지만 문제 슬라이드에서 모든 애니메이션이 끝났을 때 클릭하면 다음 문제로 넘어갑니다. 뒤로 돌아와서 Round 버튼을 눌러야 번호 선택슬라이드로 돌아옵니다. 화면전환에 체크를 해제하면 되지만 그렇게 되면 클릭할 때 애니메이션이 넘어가지 않고 키보드를 이용해야 해서 그대로 두었습니다.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;문제 슬라이드 아래에 자모양 도형의 색상은 그라디언트 색상이 2개일 때만 두번째 색상을 랜덤으로 변경합니다&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;그래픽은 구글 Gemini를 여러번 채근해서 수정해고 생성/변환하였습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추후 아이디어&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여러개의&amp;nbsp;구역으로&amp;nbsp;퀴즈&amp;nbsp;세트를&amp;nbsp;추가하여&amp;nbsp;처음&amp;nbsp;시작할&amp;nbsp;때&amp;nbsp;그룹이나&amp;nbsp;단계를&amp;nbsp;선택하게&amp;nbsp;하는&amp;nbsp;것도&amp;nbsp;좋겠습니다. &lt;br /&gt;&lt;br /&gt;숫자번호 선택 슬라이드에 각 팀별 점수판을 추가할 수도 있겠습니다. &lt;br /&gt;&lt;br /&gt;리본메뉴를&amp;nbsp;눌러서&amp;nbsp;여러&amp;nbsp;기능을&amp;nbsp;수행하게&amp;nbsp;할&amp;nbsp;계획도&amp;nbsp;있습니다.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;샘플파일4:&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 엑셀 파일 B열에 힌트나 카테고리명을 넣어서 Bomb Button에 힌트(카테고리)를 표시할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&amp;nbsp;SaveHint2SlideTags()는 엑셀 파일의 힌트를 각 문제 슬라이드의 태그로 저장합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 문제 슬라이드에 No =&amp;gt; 문제 번호, Answer =&amp;gt; 정답, Bigo =&amp;gt; 힌트(카테고리 혹은 비고) 태그를 저장합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;AddHint2BombButtons()는 각 슬라이드 태그의 힌트를 Default 앞 슬라이드의 각각의 Bomb Button 에 표시합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_094.png&quot; data-origin-width=&quot;1756&quot; data-origin-height=&quot;1013&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c78fgG/dJMcae643wn/lKK0pc3PVcZRX7FbXNQqm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c78fgG/dJMcae643wn/lKK0pc3PVcZRX7FbXNQqm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c78fgG/dJMcae643wn/lKK0pc3PVcZRX7FbXNQqm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc78fgG%2FdJMcae643wn%2FlKK0pc3PVcZRX7FbXNQqm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1756&quot; height=&quot;1013&quot; data-filename=&quot;Img_094.png&quot; data-origin-width=&quot;1756&quot; data-origin-height=&quot;1013&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. TimesUp버튼을 누르면 마지막 슬라이드에서 팀별 점수를 표시할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_095.png&quot; data-origin-width=&quot;2067&quot; data-origin-height=&quot;1136&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9boTI/dJMcabidtjF/3ZDThWMnZPGL1kw6aLCFCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9boTI/dJMcabidtjF/3ZDThWMnZPGL1kw6aLCFCK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9boTI/dJMcabidtjF/3ZDThWMnZPGL1kw6aLCFCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9boTI%2FdJMcabidtjF%2F3ZDThWMnZPGL1kw6aLCFCK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2067&quot; height=&quot;1136&quot; data-filename=&quot;Img_095.png&quot; data-origin-width=&quot;2067&quot; data-origin-height=&quot;1136&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래버전이 가장 최신 파일입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/c6dNOq/dJMcagw3Jk4/Yu2V4OioOsnbeCFLB5vKek/%EC%B4%88%EC%84%B1%ED%80%B4%EC%A6%8831_TE.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;초성퀴즈31_TE.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;2.79MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>PPT GAME</category>
      <category>Initial</category>
      <category>단어게임</category>
      <category>초성게임</category>
      <category>초성퀴즈</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/339</guid>
      <comments>https://konahn.tistory.com/entry/ChosungQuiz#entry339comment</comments>
      <pubDate>Tue, 28 Oct 2025 10:08:25 +0900</pubDate>
    </item>
    <item>
      <title>Word Jumble + Bomb Game 영어/한글 단어 맞추기 게임 자동 생성기 v2</title>
      <link>https://konahn.tistory.com/entry/WordJumble2</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_025.png&quot; data-origin-width=&quot;1852&quot; data-origin-height=&quot;1308&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbAChe/dJMb86aeY3E/AFd4ZBsZYpJ6nkKRrBNjk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbAChe/dJMb86aeY3E/AFd4ZBsZYpJ6nkKRrBNjk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbAChe/dJMb86aeY3E/AFd4ZBsZYpJ6nkKRrBNjk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbAChe%2FdJMb86aeY3E%2FAFd4ZBsZYpJ6nkKRrBNjk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;499&quot; height=&quot;352&quot; data-filename=&quot;Img_025.png&quot; data-origin-width=&quot;1852&quot; data-origin-height=&quot;1308&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번에는 지난번 &lt;a href=&quot;https://konahn.tistory.com/entry/WordJumble1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Word Jumble 게임&lt;/a&gt;을 Bomb Game 형식으로 생성하는 버전도 만들어 보았습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제 푸는 문제슬라이드는 기존과 동일하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Bomb Game 형식으로 문제를 골라서 풀고 돌아오는 방식입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_024.png&quot; data-origin-width=&quot;2548&quot; data-origin-height=&quot;1427&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/z4bWg/dJMb9V0PYOs/io3BpnSwTxrGkK0jDOkAKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/z4bWg/dJMb9V0PYOs/io3BpnSwTxrGkK0jDOkAKK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/z4bWg/dJMb9V0PYOs/io3BpnSwTxrGkK0jDOkAKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fz4bWg%2FdJMb9V0PYOs%2Fio3BpnSwTxrGkK0jDOkAKK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2548&quot; height=&quot;1427&quot; data-filename=&quot;Img_024.png&quot; data-origin-width=&quot;2548&quot; data-origin-height=&quot;1427&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게임 실행화면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/458830032&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/bvtU7B/hyZMk4DOX5/SKCgIGekWfYxKBhxD1yJl0/img.jpg?width=1833&amp;amp;height=1080&amp;amp;face=0_0_1833_1080,https://scrap.kakaocdn.net/dn/bPBDE9/hyZLlwRIqN/eohkRxZ1UUr4NMVCtYbMak/img.jpg?width=1833&amp;amp;height=1080&amp;amp;face=0_0_1833_1080&quot; data-video-width=&quot;860&quot; data-video-height=&quot;507&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;507&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/458830032?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;507&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 버전은 차례대로 다음 문제를 푸는 방식이었는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Bomb Game 은 문제 푸는 사람이 문제를 선택해서 푸는 방식입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 고르는데 더 시간이 소요되고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제의 난도를 본인이 골랐기 때문에 좀 더 공평성이 가미됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Bomb Game 제작은 좀 더 손이 많이 가는 작업입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 숫자 도형들을 생성하고 트리거 애니메이션을 적용하고&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 문제 슬라이드에 하이퍼링크를 거는 작업은 매우 귀찮은 과정입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전부터 Bomb Game 제작 자동화를 위해 노력해왔기 때문에&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런 자동화 매크로를 이번 게임 제작이 적극 도입해서 최대한 자동화 처리해보았습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;활용방법&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 매크로와 크게 다르지는 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_026.png&quot; data-origin-width=&quot;1100&quot; data-origin-height=&quot;744&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8ziJM/dJMb9Wk8Q7K/AkeEkYAu8f2H9XsK69JUF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8ziJM/dJMb9Wk8Q7K/AkeEkYAu8f2H9XsK69JUF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8ziJM/dJMb9Wk8Q7K/AkeEkYAu8f2H9XsK69JUF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8ziJM%2FdJMb9Wk8Q7K%2FAkeEkYAu8f2H9XsK69JUF0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;572&quot; height=&quot;387&quot; data-filename=&quot;Img_026.png&quot; data-origin-width=&quot;1100&quot; data-origin-height=&quot;744&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. &lt;b&gt;엑셀 파일 준비&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난번과 마찬가지로 단어목록 엑셀파일을 준비합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본 2행부터 데이터를 인식합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FirstRow=2 여서 그렇습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FirstRow=1로 바꾸면 1행부터 단어를 가져옵니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_018.png&quot; data-origin-width=&quot;406&quot; data-origin-height=&quot;426&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uqBTY/dJMb9Nu29bE/zMfw7KLtxZLBKBuOLkN2C0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uqBTY/dJMb9Nu29bE/zMfw7KLtxZLBKBuOLkN2C0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uqBTY/dJMb9Nu29bE/zMfw7KLtxZLBKBuOLkN2C0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuqBTY%2FdJMb9Nu29bE%2FzMfw7KLtxZLBKBuOLkN2C0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;259&quot; height=&quot;272&quot; data-filename=&quot;Img_018.png&quot; data-origin-width=&quot;406&quot; data-origin-height=&quot;426&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여러 단어에서 랜덤으로 단어를 추출하고 싶다면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래에 있는 CommomWords_Eng.xlsm 영어단어 랜덤추출기나 CommomWords_Kor.xlsxm 한글단어 랜덤추출기를 이용해도 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✅ Word Jumble 샘플파일 다운로드:&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/dlB7cZ/dJMcagqe4Wx/JwldpWSxjtUu9Lq6bnZfD1/WordJumble2.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;WordJumble2.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;2.77MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. &lt;b&gt;문제 템플릿 슬라이드 수정&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번에는 3번 슬라이드가 문제 템플릿 슬라이드입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Scrambed 와 Unscrambled 텍스트 상자가 문제와 정답 텍스트상자입니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;폰트, 글자크기, 글자색상, 텍스트 효과, 애니메이션 효과, 슬라이드 배경 등을 미리 수정합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그대로 두면 기본 설정대로 생성됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_027.png&quot; data-origin-width=&quot;2342&quot; data-origin-height=&quot;1056&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bB1UpK/dJMb9aqa9mw/5k6wFwoMEDyBavKTqcHP0k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bB1UpK/dJMb9aqa9mw/5k6wFwoMEDyBavKTqcHP0k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bB1UpK/dJMb9aqa9mw/5k6wFwoMEDyBavKTqcHP0k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbB1UpK%2FdJMb9aqa9mw%2F5k6wFwoMEDyBavKTqcHP0k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2342&quot; height=&quot;1056&quot; data-filename=&quot;Img_027.png&quot; data-origin-width=&quot;2342&quot; data-origin-height=&quot;1056&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;애니메이션 창을 켜고 애니메이션 효과도 수정 가능합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전구모양 힌트 도형은 제목에 있는 전구 아이콘을 복사해서 자동으로 생성합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(제목의 전구모양 아이콘을 삭제하면 오류가 발생하니 지우지 마세요.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전구그림을 누르면 해당위치의 글자가 힌트로 뜹니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(원래는 다시 힌트글자를 지우면 사라지지만 정답 텍스트상자에 가려 반응하지 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;힌트도형이 맨 위에 생성되게 하면 작동하지만 이 기능은 별로 쓰이지 않을 것 같아 그대로 두었습니다.)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_020.png&quot; data-origin-width=&quot;1246&quot; data-origin-height=&quot;725&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1as2W/dJMb9aqa9lU/JUZL8CATcqJcjeBR2R06pk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1as2W/dJMb9aqa9lU/JUZL8CATcqJcjeBR2R06pk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1as2W/dJMb9aqa9lU/JUZL8CATcqJcjeBR2R06pk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1as2W%2FdJMb9aqa9lU%2FJUZL8CATcqJcjeBR2R06pk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;593&quot; height=&quot;345&quot; data-filename=&quot;Img_020.png&quot; data-origin-width=&quot;1246&quot; data-origin-height=&quot;725&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. &lt;b&gt;매크로 실행&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Alt+F8누르면 아래와 같은 매크로를 실행할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_030.png&quot; data-origin-width=&quot;582&quot; data-origin-height=&quot;715&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bEhBx2/dJMb86Bjt4E/JaJJgqqionhCgLAedKkBrK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bEhBx2/dJMb86Bjt4E/JaJJgqqionhCgLAedKkBrK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bEhBx2/dJMb86Bjt4E/JaJJgqqionhCgLAedKkBrK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEhBx2%2FdJMb86Bjt4E%2FJaJJgqqionhCgLAedKkBrK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;431&quot; height=&quot;529&quot; data-filename=&quot;Img_030.png&quot; data-origin-width=&quot;582&quot; data-origin-height=&quot;715&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A_Main 을 실행하면 일괄처리합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀단어목록파일을 선택해서 단어를 불러와서 템플릿 슬라이드로부터 문제 슬라이드를 일괄 생성한다음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Bomb Game 버튼을 생성하고 트리거 애니메이션과 하이퍼링크를 연결해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;B_LoadXL은 엑셀파일을 선택해서 문제 슬라이드를 생성합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C_BombChoice는 Bomb Game 버튼 생성, 트리거애니메이션 적용, 하이퍼링크 작업을 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A_Main 을 실행하면 위 두 가지 처리를 한꺼번에 처리합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C_BombChoice 단계에서 가로, 세로 버튼 개수를 변경 가능합니다. 기본적으로 추천하는 개수대로 하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실행 결과 2슬라이드에 Bomb Game 버튼이 생성됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_031.png&quot; data-origin-width=&quot;1713&quot; data-origin-height=&quot;997&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bs8EPV/dJMb9OtXSvs/fbd0K88Qo4gZ4dPqT1OUpk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bs8EPV/dJMb9OtXSvs/fbd0K88Qo4gZ4dPqT1OUpk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bs8EPV/dJMb9OtXSvs/fbd0K88Qo4gZ4dPqT1OUpk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbs8EPV%2FdJMb9OtXSvs%2Ffbd0K88Qo4gZ4dPqT1OUpk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1713&quot; height=&quot;997&quot; data-filename=&quot;Img_031.png&quot; data-origin-width=&quot;1713&quot; data-origin-height=&quot;997&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;버튼 색깔이 자동으로 교차로 적용됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마음에 들지 않을 경우에는 일단 D_ButtonColor를 여러번 실행해보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계속 랜덤 색상으로 변경해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자신만의 색상으로 변경하고 싶다면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;버튼을 하나 선택하고 Module2의 SelectSimilarColor 를 실행해서 같은 색깔 버튼들을 일괄 선택하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도형 속성에서 그라디언트 색상을 조절해주면 좋습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 다음 다른 색깔 버튼을 선택하고 한번 더 매크로를 실행해서 색상을 변경하세요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_032.png&quot; data-origin-width=&quot;1176&quot; data-origin-height=&quot;740&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Xav7i/dJMb9PTWrkk/5CKyDax8MvpMLufZx5sL61/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Xav7i/dJMb9PTWrkk/5CKyDax8MvpMLufZx5sL61/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Xav7i/dJMb9PTWrkk/5CKyDax8MvpMLufZx5sL61/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXav7i%2FdJMb9PTWrkk%2F5CKyDax8MvpMLufZx5sL61%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;418&quot; data-filename=&quot;Img_032.png&quot; data-origin-width=&quot;1176&quot; data-origin-height=&quot;740&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;슬라이드쇼에서 오른쪽 상단 '문제 섞기' 아이콘을 누르면 문제 슬라이드의 순서를 랜덤으로 섞어줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하이퍼링크도 모두 자동으로 변경됩니다. 엑셀의 단어 목록이 난도가 단계적으로 나뉜 경우 이 버튼을 눌러 랜덤으로 섞어줄 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_033.png&quot; data-origin-width=&quot;1052&quot; data-origin-height=&quot;659&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sgnu7/dJMb84DuV8l/mGYu8vTlbjyQya8tQuX3zK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sgnu7/dJMb84DuV8l/mGYu8vTlbjyQya8tQuX3zK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sgnu7/dJMb84DuV8l/mGYu8vTlbjyQya8tQuX3zK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fsgnu7%2FdJMb84DuV8l%2FmGYu8vTlbjyQya8tQuX3zK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;594&quot; height=&quot;372&quot; data-filename=&quot;Img_033.png&quot; data-origin-width=&quot;1052&quot; data-origin-height=&quot;659&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;4. 작동화면&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 자주 쓰는 영어단어&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/458844099&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/cXKLVV/hyZMgVCIR2/Q1U7QBIwnrXKeGYQVyUhrK/img.jpg?width=1833&amp;amp;height=1080&amp;amp;face=0_0_1833_1080,https://scrap.kakaocdn.net/dn/okH4d/hyZLljkOSn/utVyuhC8K2KgIENYt2XGe0/img.jpg?width=1833&amp;amp;height=1080&amp;amp;face=0_0_1833_1080&quot; data-video-width=&quot;860&quot; data-video-height=&quot;507&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;507&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/458844099?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;507&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자주 쓰는 영어단어 추출용 엑셀 파일&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_034.png&quot; data-origin-width=&quot;1573&quot; data-origin-height=&quot;913&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ssOOf/dJMb9hpiUFZ/l0ka3S52kkPKv41MPKT6PK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ssOOf/dJMb9hpiUFZ/l0ka3S52kkPKv41MPKT6PK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ssOOf/dJMb9hpiUFZ/l0ka3S52kkPKv41MPKT6PK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FssOOf%2FdJMb9hpiUFZ%2Fl0ka3S52kkPKv41MPKT6PK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1573&quot; height=&quot;913&quot; data-filename=&quot;Img_034.png&quot; data-origin-width=&quot;1573&quot; data-origin-height=&quot;913&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같은 단어 목록에서 Random36을 실행하면 Sheet1에 6*6개의 단어를 랜덤 추출해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_035.png&quot; data-origin-width=&quot;536&quot; data-origin-height=&quot;907&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bTJot6/dJMb9bo5u6C/WFUKkU4rPaOkZsVVs5UtOk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bTJot6/dJMb9bo5u6C/WFUKkU4rPaOkZsVVs5UtOk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bTJot6/dJMb9bo5u6C/WFUKkU4rPaOkZsVVs5UtOk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbTJot6%2FdJMb9bo5u6C%2FWFUKkU4rPaOkZsVVs5UtOk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;344&quot; height=&quot;582&quot; data-filename=&quot;Img_035.png&quot; data-origin-width=&quot;536&quot; data-origin-height=&quot;907&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀 매크로 파일:&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/dI5K8J/dJMb84cqtM3/Yuf5BUUsWcJVgW6Q0I4nz0/CommonWords_Eng.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;CommonWords_Eng.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.04MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ppt 파일:&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/8U19U/dJMb9YJ11NE/spazDvpWS60ERlpKTMntj1/WordJumble2_CommonWords_Eng.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;WordJumble2_CommonWords_Eng.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;2.77MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 한글 단어 찾기 (한글 단어도 가능합니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/458841197&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/bxye5J/hyZMxh98TJ/41og5KZw4gLvd4yK01q9HK/img.jpg?width=1833&amp;amp;height=1080&amp;amp;face=0_0_1833_1080,https://scrap.kakaocdn.net/dn/8Yn6p/hyZLimDgS9/TEGW60LJ3ohgCp4Qup7hi0/img.jpg?width=1833&amp;amp;height=1080&amp;amp;face=0_0_1833_1080&quot; data-video-width=&quot;860&quot; data-video-height=&quot;507&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;507&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/458841197?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;507&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/CynH8/dJMb82r844A/6yZEZnUVeqgevKha1IKTKK/WordJumble2_CommonWords_Kor1.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;WordJumble2_CommonWords_Kor1.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;2.77MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/Qyel3/dJMb8V0RgCb/EK2xWwYWbx9K0uEXjqhdy0/WordJumble2_CommonWords_Kor2.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;WordJumble2_CommonWords_Kor2.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;2.97MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(매크로코드는 이 파일이 현재 최신 버전입니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한글 단어 목록 생성용 엑셀파일&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/rkKF8/dJMb8Vs1tWY/khXK9AkGP6k7pycbvxkgGK/CommonWords_Kor.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;CommonWords_Kor.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.03MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래와 같은 목록에서 Alt+F8 &amp;gt; Random36을 실행하면 Sheet1에 단어목록을 생성합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_028.png&quot; data-origin-width=&quot;1414&quot; data-origin-height=&quot;1229&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dhTKxT/dJMb9LqtbQX/pGGL8eNIxIfr4gz0LKPI70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dhTKxT/dJMb9LqtbQX/pGGL8eNIxIfr4gz0LKPI70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dhTKxT/dJMb9LqtbQX/pGGL8eNIxIfr4gz0LKPI70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdhTKxT%2FdJMb9LqtbQX%2FpGGL8eNIxIfr4gz0LKPI70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1414&quot; height=&quot;1229&quot; data-filename=&quot;Img_028.png&quot; data-origin-width=&quot;1414&quot; data-origin-height=&quot;1229&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;매크로 실행 결과 Sheet1 에 아래와 같이 7개씩 랜덤으로 추출합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_029.png&quot; data-origin-width=&quot;388&quot; data-origin-height=&quot;1219&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbTIgW/dJMb9L44EzM/YS3KeVyTyVlKypgqZnm73K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbTIgW/dJMb9L44EzM/YS3KeVyTyVlKypgqZnm73K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbTIgW/dJMb9L44EzM/YS3KeVyTyVlKypgqZnm73K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbTIgW%2FdJMb9L44EzM%2FYS3KeVyTyVlKypgqZnm73K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;236&quot; height=&quot;741&quot; data-filename=&quot;Img_029.png&quot; data-origin-width=&quot;388&quot; data-origin-height=&quot;1219&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코드상에서 아래 부분의 숫자를 수정하고 실행할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;cs 가 6이면 Bomb Game 에서 세로행수가 6이고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;rs 가 7이면 Bomb Game 에서 가로열수가 7인 경우입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6*7 = 총 42개의 버튼이 생성되게 됩니다.&lt;/p&gt;
&lt;pre id=&quot;code_1761403428667&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;    Randomize
    cs = 6  ' 레벨 개수. 1레벨 5글자단어, 2레벨 6글자단어,.., 6레벨 10글자단어
    rs = 7  ' 레벨별 단어 개수&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5.&lt;b&gt;기타&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;이 프레젠테이션에는 사용된 폰트는 렉시굴림 폰트입니다.&lt;br /&gt;&lt;a href=&quot;https://offree.net/2234&quot;&gt;https://offree.net/2234&lt;/a&gt;&lt;br /&gt;렉시굴림 도도 수정본&lt;br /&gt;&lt;a href=&quot;https://blog.naver.com/slayers_dodo/220767325724&quot;&gt;https://blog.naver.com/slayers_dodo/220767325724&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Bomb Game 만들 때 필요한 유용한 매크로는 Private 선언을 해서 Alt+F8눌렀을 때 뜨지 않습니다. 직접 코드상에서 녹색 플레이 버튼을 눌러서 실행해야 합니다. 유용한 매크로가 많이 들어 있습니다.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;Bomb Game 형식이지만 문제 슬라이드에서 클릭하면 다음 문제로 넘어갑니다. 뒤로 돌아와서 Round 버튼을 눌러야 번호 선택슬라이드로 돌아옵니다. 화면전환에 체크를 해제하면 되지만 그렇게 되면 클릭할 때 애니메이션이 넘어가지 않습니다.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;문제 슬라이드 아래에 자모양 도형의 색상은 그라디언트 색상이 2개일 때만 두번째 색상을 랜덤으로 변경합니다&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;여러개의 구역으로 퀴즈 세트를 추가하여 처음 시작할 때 그룹이나 단계를 선택하게 하는 것도 좋겠습니다.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;숫자선택 슬라이드에 각 팀별 점수판을 추가할 수도 있겠습니다.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;리본메뉴를 눌러서 여러 기능을 수행하게 할 계획도 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;6. 수정 버전&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래처럼 B열에 문제에 대한 힌트나 카테고리 등을 적어놓고&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_096.png&quot; data-origin-width=&quot;461&quot; data-origin-height=&quot;474&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AWkQs/dJMcaiPa9ZJ/GB5qRiCIezjPCXnLeVpYZk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AWkQs/dJMcaiPa9ZJ/GB5qRiCIezjPCXnLeVpYZk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AWkQs/dJMcaiPa9ZJ/GB5qRiCIezjPCXnLeVpYZk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAWkQs%2FdJMcaiPa9ZJ%2FGB5qRiCIezjPCXnLeVpYZk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;275&quot; height=&quot;283&quot; data-filename=&quot;Img_096.png&quot; data-origin-width=&quot;461&quot; data-origin-height=&quot;474&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 매크로를 추가 실행해서 Bomb Button에 미리 해당 힌트를 보여주게 할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- SaveHint2SlideTags()는 엑셀 파일의 힌트를 각 문제 슬라이드의 태그로 저장합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 문제 슬라이드에 No태그 =&amp;gt; 문제 번호, Answer 태그 =&amp;gt; 정답, Bigo 태그 =&amp;gt; 힌트(카테고리 혹은 비고) 태그를 저장합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;- AddHint2BombButtons()는 각 슬라이드 태그중 힌트 태그의 내용을 Default 앞 슬라이드 즉 Bomb Button 슬라이드의 각각의 Bomb Button 에 미리 표시합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_097.png&quot; data-origin-width=&quot;1988&quot; data-origin-height=&quot;1116&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/crPfTU/dJMcadf1ZQc/hhekrK1QYE3k8Rf4aRT4O1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/crPfTU/dJMcadf1ZQc/hhekrK1QYE3k8Rf4aRT4O1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/crPfTU/dJMcadf1ZQc/hhekrK1QYE3k8Rf4aRT4O1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcrPfTU%2FdJMcadf1ZQc%2FhhekrK1QYE3k8Rf4aRT4O1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1988&quot; height=&quot;1116&quot; data-filename=&quot;Img_097.png&quot; data-origin-width=&quot;1988&quot; data-origin-height=&quot;1116&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한&amp;nbsp; 문제 슬라이드에서 오른쪽 아래 Time's up 버튼을 누르면 맨 마지막 팀별 점수판 슬라이드로 이동합니다. VBA 없이 트리거 애니메이션으로 구현했습니다. 문제 생성시 팀의 개수와 최고 점을 설정할 수 있습니다. 나중에라도 매크로 중&amp;nbsp; F_TeamScore를 실행하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_098.png&quot; data-origin-width=&quot;2455&quot; data-origin-height=&quot;1228&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bykFIQ/dJMcahpcrAO/qsgYxO4YL3XrlOskvLU5D1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bykFIQ/dJMcahpcrAO/qsgYxO4YL3XrlOskvLU5D1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bykFIQ/dJMcahpcrAO/qsgYxO4YL3XrlOskvLU5D1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbykFIQ%2FdJMcahpcrAO%2FqsgYxO4YL3XrlOskvLU5D1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2455&quot; height=&quot;1228&quot; data-filename=&quot;Img_098.png&quot; data-origin-width=&quot;2455&quot; data-origin-height=&quot;1228&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 가장 최신 버전입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/biMOyc/dJMcacuEWW4/RB5fUGa9QI6kv7zgU64DcK/WordJumble3TS_CommonWords_Eng.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;WordJumble3TS_CommonWords_Eng.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;3.15MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;gt;&amp;gt; 다음에는 이 게임을 조금만 수정해서 초성퀴즈 자동생성기로 만들어 보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>PPT GAME</category>
      <category>bombgame</category>
      <category>Jumble</category>
      <category>단어철자</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/338</guid>
      <comments>https://konahn.tistory.com/entry/WordJumble2#entry338comment</comments>
      <pubDate>Sun, 26 Oct 2025 00:50:54 +0900</pubDate>
    </item>
    <item>
      <title>Word Jumble 영어단어 철자순서 맞추기 게임 자동 생성기 v1</title>
      <link>https://konahn.tistory.com/entry/WordJumble1</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_015.png&quot; data-origin-width=&quot;1576&quot; data-origin-height=&quot;1043&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cDBIem/dJMb9Wk8MUs/7juXHTnzLb8Zeqaz2E3Cp1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cDBIem/dJMb9Wk8MUs/7juXHTnzLb8Zeqaz2E3Cp1/img.png&quot; data-alt=&quot;구글 Gemini의 도움으로 생성한 로고&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cDBIem/dJMb9Wk8MUs/7juXHTnzLb8Zeqaz2E3Cp1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcDBIem%2FdJMb9Wk8MUs%2F7juXHTnzLb8Zeqaz2E3Cp1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;473&quot; height=&quot;313&quot; data-filename=&quot;Img_015.png&quot; data-origin-width=&quot;1576&quot; data-origin-height=&quot;1043&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;구글 Gemini의 도움으로 생성한 로고&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Word Jumble 게임은&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영어단어 'apple'이 'eplpa'나 'lpape' 로 섞여 있을때 원래 단어 'apple'을 맞추는 게임입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_016.png&quot; data-origin-width=&quot;625&quot; data-origin-height=&quot;413&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/VFtZG/dJMb9NohIZE/Ylm7exHeJWmc3TeMvBszmk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/VFtZG/dJMb9NohIZE/Ylm7exHeJWmc3TeMvBszmk/img.png&quot; data-alt=&quot;출처: Cambridge Dictionary&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/VFtZG/dJMb9NohIZE/Ylm7exHeJWmc3TeMvBszmk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVFtZG%2FdJMb9NohIZE%2FYlm7exHeJWmc3TeMvBszmk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;337&quot; height=&quot;223&quot; data-filename=&quot;Img_016.png&quot; data-origin-width=&quot;625&quot; data-origin-height=&quot;413&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처: Cambridge Dictionary&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;섞여 있는 철자의 원래 단어를 찾아내는 것이 쉽지만은 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫글자나 중간 글자에 대한 힌트라도 있다면 좀 더 풀기 편해집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;온라인에 Jumble 풀이에 도움을 주는 사이트도 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://jumblesolver.me/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://jumblesolver.me/&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://jumblesolver.us/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://jumblesolver.us/&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://word.tips/jumble-solver/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://word.tips/jumble-solver/&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Word Jumble 퀴즈를 파워포인트 슬라이드에 만들 경우에&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단어 철자를 섞고 문제를 만드는 것이 귀찮기도 하고 자칫 잘못하면 철자를 틀리기 쉽습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 이번 기회에 여러 단어에 대한 Word Jumble 게임 슬라이드를&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일괄로 자동으로 생성하는 VBA매크로를 만들어 보았습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;첫번째 버전입니다.&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/bjtTkY/dJMb9P0H0Jk/n7NNp8cXAHQhj2vFPIvjw1/WordJumble1.pptm?attach=1&amp;amp;knm=tfile.pptm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;WordJumble1.pptm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;2.52MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_017.png&quot; data-origin-width=&quot;2157&quot; data-origin-height=&quot;1271&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/behkCK/dJMb9Mpnh6i/uDyrEKVh4Gh8H305eGvEDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/behkCK/dJMb9Mpnh6i/uDyrEKVh4Gh8H305eGvEDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/behkCK/dJMb9Mpnh6i/uDyrEKVh4Gh8H305eGvEDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbehkCK%2FdJMb9Mpnh6i%2FuDyrEKVh4Gh8H305eGvEDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2157&quot; height=&quot;1271&quot; data-filename=&quot;Img_017.png&quot; data-origin-width=&quot;2157&quot; data-origin-height=&quot;1271&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위처럼 타이틀 슬라이드, 템플릿 슬라이드, 문제 슬라이드들로 구성됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Alt+F8을 누르고 Load_XL을 실행하면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엑셀파일 단어 목록으로부터&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Word Jumble 문제 슬라이드들을 일괄로 자동 생성합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1, 엑셀파일&lt;/b&gt;은 다른 양식이 필요 없고 A1셀부터 아래로 단어목록을 입력하고 저장하면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_018.png&quot; data-origin-width=&quot;406&quot; data-origin-height=&quot;426&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nzG0c/dJMb9P7toiE/Kn8Hj1OVqI6JnQ5qf9NK8k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nzG0c/dJMb9P7toiE/Kn8Hj1OVqI6JnQ5qf9NK8k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nzG0c/dJMb9P7toiE/Kn8Hj1OVqI6JnQ5qf9NK8k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnzG0c%2FdJMb9P7toiE%2FKn8Hj1OVqI6JnQ5qf9NK8k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;290&quot; height=&quot;304&quot; data-filename=&quot;Img_018.png&quot; data-origin-width=&quot;406&quot; data-origin-height=&quot;426&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 문제슬라이드가 생성되는 &lt;b&gt;템플릿 슬라이드&lt;/b&gt;가 2슬라이드입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;매크로 실행 전에 이 슬라이드를 먼저 수정하는 것이 좋습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 Scrambled와 Unscrambled 텍스트상자(도형)이 중요합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;폰트나 글자색상, 글자크기, 글자효과, 애니메이션이 모두 그대로 문제 슬라이드에 반영됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;슬라이드의 배경이나 제목문구, 라운드 숫자, 10초 타이머 애니메이션, 타임오버 애니메이션 등도 수정해도 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제목문구나 여러가지 그래픽은 구글 Gemini의 도움을 받았습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_019.png&quot; data-origin-width=&quot;2495&quot; data-origin-height=&quot;1069&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/csu9IS/dJMb9V0PYwL/unTcBGGPnhK58aYkDof4nk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/csu9IS/dJMb9V0PYwL/unTcBGGPnhK58aYkDof4nk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/csu9IS/dJMb9V0PYwL/unTcBGGPnhK58aYkDof4nk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcsu9IS%2FdJMb9V0PYwL%2FunTcBGGPnhK58aYkDof4nk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2495&quot; height=&quot;1069&quot; data-filename=&quot;Img_019.png&quot; data-origin-width=&quot;2495&quot; data-origin-height=&quot;1069&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본적인 애니메이션은 아래와 같이 구성되어 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전구아이콘은 힌트 글자가 뜨게하는 트리거 도형인데 자동으로 생성되므로 수정할 필요 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(제목에 있는 작은 전구도형을 복사하므로 혹시 지워버리면 힌트가 작동하지 못합니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_020.png&quot; data-origin-width=&quot;1246&quot; data-origin-height=&quot;725&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cp6Vcc/dJMb9Qk0GbC/jLjRGYAHjYOct1IPkK0ds1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cp6Vcc/dJMb9Qk0GbC/jLjRGYAHjYOct1IPkK0ds1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cp6Vcc/dJMb9Qk0GbC/jLjRGYAHjYOct1IPkK0ds1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcp6Vcc%2FdJMb9Qk0GbC%2FjLjRGYAHjYOct1IPkK0ds1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;643&quot; height=&quot;374&quot; data-filename=&quot;Img_020.png&quot; data-origin-width=&quot;1246&quot; data-origin-height=&quot;725&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 엑셀 파일과 문제 템플릿 슬라이드가 준비되었다면 이제 매크로 실행만 하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Alt+F8을 누르고 LoadXL 매크로를 실행하고 엑셀파일을 선택합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_021.png&quot; data-origin-width=&quot;1163&quot; data-origin-height=&quot;828&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b5txTP/dJMb9MpnieB/43yXEqc0YDjQP0kGMcrVKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b5txTP/dJMb9MpnieB/43yXEqc0YDjQP0kGMcrVKk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b5txTP/dJMb9MpnieB/43yXEqc0YDjQP0kGMcrVKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb5txTP%2FdJMb9MpnieB%2F43yXEqc0YDjQP0kGMcrVKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;729&quot; height=&quot;519&quot; data-filename=&quot;Img_021.png&quot; data-origin-width=&quot;1163&quot; data-origin-height=&quot;828&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. Questions 영역에 문제 슬라이드들이 복제되어 생성됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_023.png&quot; data-origin-width=&quot;1615&quot; data-origin-height=&quot;1263&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8DpJW/dJMb81ms82i/EKdo0kSmhRt5kp0HS0sKf1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8DpJW/dJMb81ms82i/EKdo0kSmhRt5kp0HS0sKf1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8DpJW/dJMb81ms82i/EKdo0kSmhRt5kp0HS0sKf1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8DpJW%2FdJMb81ms82i%2FEKdo0kSmhRt5kp0HS0sKf1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1615&quot; height=&quot;1263&quot; data-filename=&quot;Img_023.png&quot; data-origin-width=&quot;1615&quot; data-origin-height=&quot;1263&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5. 실행 화면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/458829782&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/MIX7L/hyZMCKu6wb/YTLwImTxSI0lykvUATFWH0/img.jpg?width=1833&amp;amp;height=1080&amp;amp;face=0_0_1833_1080,https://scrap.kakaocdn.net/dn/jpaIz/hyZMpdO5Ur/7NRd65CsFSIR6rxPa7XDw1/img.jpg?width=1833&amp;amp;height=1080&amp;amp;face=0_0_1833_1080&quot; data-video-width=&quot;860&quot; data-video-height=&quot;507&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;507&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/458829782?service=daum_tistory&quot; width=&quot;860&quot; height=&quot;507&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption style=&quot;display: none;&quot;&gt;&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전구모양 힌트 아이콘을 누르면 글자가 나타납니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(원래 나타난 글자를 다시 누르면 사라지게 하려고 했으나&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나중에 나타나는 정답 글자 아래에 있어서 그 기능은 현재 작동하지 않습니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 프레젠테이션에는 사용된 폰트는 렉시굴림 폰트입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://offree.net/2234&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://offree.net/2234&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;렉시굴림 도도 수정본&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://blog.naver.com/slayers_dodo/220767325724&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://blog.naver.com/slayers_dodo/220767325724&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VBA코드입니다.&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;pre id=&quot;code_1761351819586&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt; Option Explicit

Private Sub NameShapes()
    Dim pNum As Integer, usr$, shp As Shape
    
    usr = InputBox(&quot;도형이름 시작문구를 입력하세요.&quot;, , &quot;_&quot;)
    If Len(usr) = 0 Then Exit Sub
    For Each shp In ActiveWindow.Selection.ShapeRange
        pNum = pNum + 1
        shp.Name = usr &amp;amp; Format(pNum, &quot;00&quot;)
    Next shp
End Sub

Function shpExist(oSld As Slide, strName As String) As Boolean
    Dim shp As Shape
    For Each shp In oSld.Shapes
        If shp.Name = strName Then shpExist = True: Exit Function
    Next shp
    shpExist = False
End Function

'shuffle
Sub shufflerange(Optional Notused As Boolean)
    Dim Iupper As Integer, Ilower As Integer
    Dim Ifrom As Integer, Ito As Integer, Default As Integer, i As Integer
    Iupper = ActivePresentation.Slides.Count
    Ilower = Default + 1     'slide number to start shuffle
    If Iupper &amp;gt; ActivePresentation.Slides.Count Or Ilower &amp;lt;= Default Then GoTo err
    For i = 1 To 2 * Iupper
        Randomize
        Ifrom = Int((Iupper - Ilower + 1) * Rnd + Ilower)
        Ito = Int((Iupper - Ilower + 1) * Rnd + Ilower)
        ActivePresentation.Slides(Ifrom).MoveTo (Ito)
    Next i
    MsgBox (Iupper - Ilower) &amp;amp; &quot;slides were mixed in order.&quot;
Exit Sub
err:
    MsgBox &quot;ERROR) Generate a new slideshow first.&quot;, vbCritical
End Sub

'사용법
' =shuffle(A1) : 첫번째 단어부터 섞기
' =shuffle(A11,2) : 세번째 단어부터 섞기
Private Sub testShuffle()
    Debug.Print Shuffle(&quot;try to&quot;, 0)
End Sub

Function Shuffle(str As String, Optional Except As Integer = 1) As String
    Dim Words() As String, temp As String
    Dim total As Integer, start As Integer, i As Integer, r As Integer
    
    '주어진 문장 조각내기
    Words = Split(Trim(str), &quot; &quot;)
    total = UBound(Words)
    start = LBound(Words)
    If total = 0 Then Shuffle = str: Exit Function

    '단어 배열 섞기 시작
    Randomize           '랜덤 시드 초기화
    
    '만약 처음 몇단어를 제외하고 섞는다면
    If Except Then start = start + Except
    
    For i = start To total
        r = Int(Rnd * (total - start)) + start
        temp = Words(i)     '랜덤 위치의 배열과 서로 교환
        Words(i) = Words(r)
        Words(r) = temp
    Next i
    
    '결과 문장 생성
    Shuffle = &quot;&quot;
    For i = LBound(Words) To total
        Shuffle = Shuffle &amp;amp; Words(i)
        If i &amp;lt;&amp;gt; total Then Shuffle = Shuffle &amp;amp; &quot; &quot;  '&quot;/ &quot;
    Next i
    Shuffle = Shuffle &amp;amp; &quot;&quot;
    
End Function

Private Sub testScramble()
    Debug.Print Scramble(&quot;try to&quot;)
End Sub

Function Scramble(word As String) As String
    
    Dim temp() As String
    Dim i  As Integer
    
    word = Shuffle(Trim(word), 0)
    temp = Split(word, &quot; &quot;)
    For i = LBound(temp) To UBound(temp)
        temp(i) = ScrambleWord(temp(i))
    Next i
    If UBound(temp) = LBound(temp) Then
        Scramble = temp(LBound(temp))
    Else
        Scramble = Join(temp, &quot; &quot;)
    End If
End Function

Function ScrambleWord(str As String) As String
    Dim Scr() As String, temp As String
    Dim total As Integer, i As Integer, r As Integer
    
    '주어진 단어 조각내기
    str = StrConv(Trim(str), vbUnicode)
    Scr = Split(Left(str, Len(str) - 1), vbNullChar)
    total = UBound(Scr)
 
    '단어 배열 섞기 시작
    Randomize           '랜덤 시드 초기화

    For i = LBound(Scr) To total
        r = Int(Rnd * total)
        temp = Scr(i)     '랜덤 위치의 배열과 서로 교환
        Scr(i) = Scr(r)
        Scr(r) = temp
    Next i
    
    '결과 단어 생성
    ScrambleWord = Join(Scr, &quot;&quot;)
    
End Function

Sub LoadXL()

    Dim FD As FileDialog, xlFile$
    Dim xL As Object, xBook As Object, xSht As Object, xRng As Object, xRngLast As Object
    Dim prs As Presentation, sld As Slide, shp As Shape, Default&amp;amp;, i&amp;amp;
    
    Set prs = ActivePresentation
    Default = 2  '기준 슬라이드
    Set FD = Application.FileDialog(msoFileDialogFilePicker)
    With FD
        .Filters.Clear
        .Filters.Add &quot;Word List Excel&quot;, &quot;*.xls?,*.csv&quot;
        .InitialFileName = prs.Path &amp;amp; &quot;\&quot;
        If .Show = -1 Then xlFile = .SelectedItems(1)
    End With
    If xlFile = &quot;&quot; Then Exit Sub
    
    '// 기존 슬라이드 삭제
    If prs.Slides.Count &amp;gt; Default Then
        If MsgBox(&quot;기존 슬라이드들을 지울까요?&quot;, vbOKCancel) = vbOK Then
            For i = prs.Slides.Count To Default + 1 Step -1
                prs.Slides(i).Delete
            Next i
        End If
    End If
    
    Set xL = CreateObject(&quot;Excel.Application&quot;)
    If xL Is Nothing Then Exit Sub
    
    Set xBook = xL.workbooks.Open(xlFile)
    Set xSht = xBook.Worksheets(1)
    Set xRngLast = xSht.Cells(xSht.Rows.Count, &quot;A&quot;).End(-4162)
    
    For Each xRng In xSht.Range(&quot;A1:A&quot; &amp;amp; xRngLast.Row)
    
        Set sld = prs.Slides(Default).Duplicate(1)
        sld.MoveTo prs.Slides.Count
        If xRng.Row = 1 Then sld.MoveToSectionStart 3
        sld.SlideShowTransition.Hidden = msoFalse
        sld.Shapes(&quot;Scrambled&quot;).TextFrame.TextRange = Scramble(xRng.Text)
        sld.Shapes(&quot;Unscrambled&quot;).TextFrame.TextRange = Trim(xRng.Text)
        addHint sld
        If sld.Shapes(&quot;Ruler&quot;).Fill.GradientStops.Count = 2 Then _
            sld.Shapes(&quot;Ruler&quot;).Fill.GradientStops(2).Color.RGB = RGB(Rnd * 125, Rnd * 125, Rnd * 125)
        sld.Shapes(&quot;Round&quot;).TextFrame.TextRange = Format(xRng.Row, &quot;00&quot;) &amp;amp; &quot; / &quot; &amp;amp; xRngLast.Row
    Next xRng
    
    If Not xBook Is Nothing Then xBook.Close
    If Not xL Is Nothing Then Set xL = Nothing
End Sub

Function delShapes(sld As Slide, pref As String)

    Dim i As Long
    For i = sld.Shapes.Count To 1 Step -1
        If sld.Shapes(i).Name Like pref Then sld.Shapes(i).Delete
    Next i
End Function

Private Sub doAddhint()
    Dim sld As Slide
    Set sld = ActivePresentation.Slides(2)
    addHint sld
End Sub

Function addHint(oSld As Slide)
    
    Dim hshp As Shape, shp As Shape, sshp As Shape, eft As Effect
    Dim x!, y!, w!, h!, sw!, sh!, i&amp;amp;, j&amp;amp;, id&amp;amp;
    Set hshp = oSld.Shapes(&quot;Hint&quot;)
    sw = hshp.Width: sh = hshp.Height
    y = (oSld.Shapes(&quot;Scrambled&quot;).Top + oSld.Shapes(&quot;Scrambled&quot;).Height)
    y = y + (oSld.Shapes(&quot;Unscrambled&quot;).Top - y) / 2
    
    Call delShapes(oSld, &quot;Hint_*&quot;)
    Call delShapes(oSld, &quot;Uns_*&quot;)
    With oSld.Shapes(&quot;Unscrambled&quot;).TextFrame.TextRange
        For i = 1 To Len(.Text)
            If .Characters(i) &amp;lt;&amp;gt; &quot; &quot; Then '빈칸 제외
                '힌트 트리거 도형 생성
                x = .Characters(i).BoundLeft
                w = .Characters(i).BoundWidth
                h = .Characters(i).BoundHeight
                Set shp = hshp.Duplicate(1):  DoEvents
                shp.Left = x + w / 2 - sw / 2
                shp.Top = y - sh / 2
                shp.Rotation = 0
                shp.Name = &quot;Hint_&quot; &amp;amp; i
                id = oSld.TimeLine.MainSequence.FindFirstAnimationFor(oSld.Shapes(&quot;Scrambled&quot;)).Index
                Set eft = oSld.TimeLine.MainSequence.AddEffect(shp, msoAnimEffectAppear, , msoAnimTriggerAfterPrevious, id + 1)
 
                '힌트 글자 도형 생성
                With oSld.Shapes(&quot;Unscrambled&quot;)
                    Set sshp = .Duplicate(1)
                    sshp.Name = &quot;Uns_&quot; &amp;amp; i
                    sshp.ZOrder msoSendToBack
                    sshp.TextFrame2.TextRange.Font.Shadow.Visible = msoFalse
                    oSld.TimeLine.MainSequence.FindFirstAnimationFor(sshp).Delete
                End With
                With sshp.TextFrame.TextRange.Characters
                    For j = .Count To 1 Step -1
                        If j &amp;lt;&amp;gt; i Then .Characters(j).Delete
                    Next j
                End With
                sshp.Width = w  'sshp.Height = h
                sshp.Left = x
                sshp.Top = .Characters(i).BoundTop
                sshp.TextFrame.TextRange.Font.Color = rgbLightGray
                '힌트 도형 누르면 나타나기
                Set eft = oSld.TimeLine.InteractiveSequences.Add().AddTriggerEffect( _
                    sshp, msoAnimEffectFade, msoAnimTriggerOnShapeClick, shp)
                '글자 누르면 사라지기 (가려져서 미작동)
                Set eft = oSld.TimeLine.InteractiveSequences.Add().AddTriggerEffect( _
                    sshp, msoAnimEffectFade, msoAnimTriggerOnShapeClick, sshp)
                eft.Exit = msoTrue
            End If
        Next i

    End With
    
End Function&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일은 위쪽에 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음으로 Word Jumble 게임을 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;Bomb Game 형식으로 생성하는 버전도 만들어 보았습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>PPT GAME</category>
      <category>Jumble</category>
      <category>unscramble</category>
      <category>단어게임</category>
      <category>철자맞추기</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/337</guid>
      <comments>https://konahn.tistory.com/entry/WordJumble1#entry337comment</comments>
      <pubDate>Sat, 25 Oct 2025 09:26:41 +0900</pubDate>
    </item>
    <item>
      <title>엑셀에서 취소선 대신 화살표 등 도형 표시</title>
      <link>https://konahn.tistory.com/entry/StrikeThrough</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;관련: &lt;a href=&quot;https://kin.naver.com/qna/detail.naver?d1id=1&amp;amp;dirId=102020101&amp;amp;docId=489453767&amp;amp;answerNo=4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;지식인&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-952771a2-4f81-4eba-b6a6-41348956f42a&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-ace3e349-2fe2-458d-b222-cc57700637b9&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;엑셀에서 셀 내의 글자에 취소선을 적용할 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그런데 단순한 직선 대신 화살표 모양 취소선을 표시하고 싶은 경우입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Img_086.png&quot; data-origin-width=&quot;789&quot; data-origin-height=&quot;290&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cbESsE/btsQ7efVNRk/gzUk5eKB31E7Oy2ka9vohK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cbESsE/btsQ7efVNRk/gzUk5eKB31E7Oy2ka9vohK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cbESsE/btsQ7efVNRk/gzUk5eKB31E7Oy2ka9vohK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcbESsE%2FbtsQ7efVNRk%2FgzUk5eKB31E7Oy2ka9vohK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;408&quot; height=&quot;150&quot; data-filename=&quot;Img_086.png&quot; data-origin-width=&quot;789&quot; data-origin-height=&quot;290&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;엑셀에서 따로 취소선의 서식을 지원하지 않으므로&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-c71e20a8-721b-481c-a27c-383c82037997&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;VBA를 이용해서 직접 그려줘야겠습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-0fc9b652-4b9d-4d49-9790-f9df9ad1d899&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-453dad1f-443b-4297-9a3e-c3e62161b72a&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아래 VBA를 이용하면 선택된 셀에 텍스트에 취소선 화살표를 그려줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-31c881f2-2c92-48f0-bf94-3bd92353a28c&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;533&quot; data-origin-height=&quot;382&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bb8jE7/btsQ8Um2Yhn/ki9QBGSfSHzSznikqMIYKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bb8jE7/btsQ8Um2Yhn/ki9QBGSfSHzSznikqMIYKk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bb8jE7/btsQ8Um2Yhn/ki9QBGSfSHzSznikqMIYKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbb8jE7%2FbtsQ8Um2Yhn%2Fki9QBGSfSHzSznikqMIYKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;426&quot; height=&quot;305&quot; data-origin-width=&quot;533&quot; data-origin-height=&quot;382&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-e858d563-a357-463c-ab87-55d95ec1e9c0&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p id=&quot;SE-7fbcf078-a79b-4e05-a54c-2d9fce66bac8&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;화살표 모양이나 색상, 굵기 등은 코드를 수정하면 됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-e324c1f8-4f48-423e-8123-2b4c2946a75b&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;텍스트인경우 왼쪽 정렬해서 글자 위에 그려줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-a2bcb3c0-25d6-44a3-8e4c-a3894d671c03&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;388&quot; data-origin-height=&quot;250&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PiJPw/btsQ8q0PSIc/y4r3IWPHmgYd82W0T098SK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PiJPw/btsQ8q0PSIc/y4r3IWPHmgYd82W0T098SK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PiJPw/btsQ8q0PSIc/y4r3IWPHmgYd82W0T098SK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPiJPw%2FbtsQ8q0PSIc%2Fy4r3IWPHmgYd82W0T098SK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;334&quot; height=&quot;215&quot; data-origin-width=&quot;388&quot; data-origin-height=&quot;250&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-261428d1-f5f5-42f4-aee2-55c07702e82f&quot; style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-d8e51305-ccd8-4139-ab25-bb0110f36a04&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;문제가 하나 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;사실, 엑셀의 텍스트로는 글자의 X/Y위치값을 알 수 없습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;단순하게 셀 크기 만큼의 크기로 직선을 그으면 되지만 취소선과 같은 모양으로 만들려면&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;텍스트의 시작이나 마지막의 X/Y좌표를 알 수 없어 직선을 그리는데 어려움이 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;파워포인트의 텍스트상자나 도형은 내부 텍스트의 Character의 X/Y좌표를 알 수 있지만&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;엑셀에서는 이 기능을 제공하지 않습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;파워포인트 개체로 만들어서 복사해올 수는 있겠으나 너무 번거롭습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그래서 여기서는&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-9f10c655-2e40-43ba-9801-e297626c645c&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;엑셀 시트상에 임시로 텍스트 상자를 그려봐서 그 위치를 통해 화살표를 그리도록 했습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-8599f06e-1b1a-4e8e-9073-9fadda7d1b33&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-93399b22-f46b-4c85-b7b6-ec88ec95d7f1&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;그렇기 때문에 간단한 것 같지만 코드가 길어졌습니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1760397021145&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Sub addStrikeThrough()

    Dim rng As Range, sht As Worksheet
    Dim shp As Shape, shpT As Shape
    Dim x1!, x2!, y!, m!
    
    Set sht = ActiveSheet
    If ActiveWindow.Selection Is Nothing Then Exit Sub

    For Each rng In ActiveWindow.Selection
        
        '임시 텍스트상자 그리기
        Set shp = sht.Shapes.AddTextbox(msoTextOrientationHorizontal, rng.Left, rng.Top, rng.Width, rng.Height)
        With shp.TextFrame
            .HorizontalAlignment = rng.HorizontalAlignment
            .VerticalAlignment = rng.VerticalAlignment
            .Characters.Text = rng.Text
            .Characters.Font.Size = rng.Font.Size
            .Characters.Font.Name = rng.Font.Name
            .MarginLeft = 0:    .MarginRight = 0
            .MarginTop = 0:     .MarginBottom = 0
            .AutoSize = True
        End With
        DoEvents
        m = 2   '여백
        x1 = shp.Left
        x2 = shp.Left + shp.Width + m
        If rng.HorizontalAlignment = xlGeneral Then '데이터유형에 따른 일반정렬인 경우
            If IsNumeric(rng.Text) Then
                x1 = x1 + (rng.Width - shp.Width) - m
                x2 = x1 + shp.Width + m
            End If
        End If
        y = shp.Top + shp.Height / 2
        shp.Delete
        
        '화살표 그리기
        'y = rng.Top + rng.Height / 2
        'x1 = rng.Left + m
        'x2 = rng.Left + rng.Width - m * 2
        Set shp = sht.Shapes.AddLine(x1, y, x2, y)
        With shp.Line
            .Weight = 1
            .ForeColor.RGB = rgbTeal
            .EndArrowheadStyle = msoArrowheadTriangle
            .EndArrowheadLength = msoArrowheadLong
            .EndArrowheadWidth = msoArrowheadWide
        End With
        shp.Name = &quot;ST_&quot; &amp;amp; rng.Address(False, False)
        shp.Placement = xlMove
        
    Next rng

End Sub&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-c1f3ebf2-94c1-4725-9a79-ecc605ae014e&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;위 매크로를 빠른 실행에 추가하면 단축키로 실행 가능합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-8b87336d-262d-4d08-9414-b57e029fa9f4&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-31a5bc89-1e8e-4281-99b1-1f96e2d54f4d&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;셀을 선택하고 Alt+F8등으로 매크로 addStrikeThrough를 실행하면 화살표를 추가하고&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-30fb68fe-8546-42c8-9cd0-01c915e68b4a&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;아래의 delStrikeThrough 를 실행하면 선택된 셀 위의 화살표를 지워줍니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1760397078624&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Sub delStrikeThrough()
    
    Dim sht As Worksheet
    Dim rng As Range
    Dim l As Long, shp As Shape
    
    Set sht = ActiveSheet
    For l = sht.Shapes.Count To 1 Step -1
        Set shp = sht.Shapes(l)
        If shp.Name Like &quot;ST_*&quot; Then
            For Each rng In ActiveWindow.Selection
                If shp.TopLeftCell.Address = rng.Address Then
                    shp.Delete
                    Exit For
                End If
            Next rng
        End If
    Next l
End Sub&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-6fb7f277-868e-46fa-aeda-f50a0a611379&quot; style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;​실행화면:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1.gif&quot; data-origin-width=&quot;1139&quot; data-origin-height=&quot;733&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bTigR5/btsQ74jFR0v/k7QLPtwzxW5T1gexDKJi80/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bTigR5/btsQ74jFR0v/k7QLPtwzxW5T1gexDKJi80/img.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bTigR5/btsQ74jFR0v/k7QLPtwzxW5T1gexDKJi80/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/bTigR5/btsQ74jFR0v/k7QLPtwzxW5T1gexDKJi80/img.gif&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;799&quot; height=&quot;514&quot; data-filename=&quot;1.gif&quot; data-origin-width=&quot;1139&quot; data-origin-height=&quot;733&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;취소선의 서식은 코드의 아래 부분을 수정하세요.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;선의 두께, 색상, 시작/끝 화살표의 모양/길이/폭 등을 수정할 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;도형이므로 그림자, 반사, 네온, 3차원효과 등 도형효과도 적용 가능합니다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1760397632392&quot; class=&quot;vbnet&quot; data-ke-language=&quot;vbnet&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;        With shp.Line
            .Weight = 1
            .ForeColor.RGB = rgbTeal
            .EndArrowheadStyle = msoArrowheadTriangle
            .EndArrowheadLength = msoArrowheadLong
            .EndArrowheadWidth = msoArrowheadWide
        End With&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;테스트는&amp;nbsp;&lt;/span&gt;&lt;span&gt;첨부파일 참고하세요.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/qIo2q/dJMb9VT2A71/NPGdfThYxSUH43RUAbgw0K/%ED%86%B5%ED%95%A9%20%EB%AC%B8%EC%84%9C1.xlsm?attach=1&amp;amp;knm=tfile.xlsm&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;통합 문서1.xlsm&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;0.02MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>XLS+VBA</category>
      <category>취소선</category>
      <category>화살표</category>
      <author>쵸코난</author>
      <guid isPermaLink="true">https://konahn.tistory.com/336</guid>
      <comments>https://konahn.tistory.com/entry/StrikeThrough#entry336comment</comments>
      <pubDate>Tue, 14 Oct 2025 08:23:02 +0900</pubDate>
    </item>
  </channel>
</rss>