엑셀 자동화 TOOL공유 PPT 모든 슬라이드 자동번역 TOOL
1. PPT의 언어를 다른 나라 언어로 자동번역이 가능한가
이전 포스팅에서는 엑셀의 언어를 다른 나라언어로 자동번역하는 TOOL을 소개했습니다만, 동일하게 PPT에서도 한국어를 다른 외국어로 혹은 외국어를 한국어로 번역하는 작업을 자동화해보겠습니다. 일반적으로는 PPT에도 내장된 번역기능이 있어서 하기와 같은 수순으로 번역을 진행할 수 있습니다.
① PowerPoint 열기: 먼저 PowerPoint을 엽니다.
② 번역하려는 텍스트 선택: PPT에서 번역하고자 하는 텍스트를 선택합니다.
③ 탭 선택: "검토" 탭으로 이동합니다. PowerPoint 2016 이상의 버전의 경우, "검토" 탭에서 "언어" 그룹을 찾습니다.
④ 언어 그룹에서 "번역" 버튼을 클릭합니다.
⑤ 번역 언어 선택: 번역할 언어를 선택하거나 추가할 수 있습니다. 원하는 언어가 목록에 없는 경우 "언어 추가"를 선택하여 원하는 언어를 추가할 수 있습니다.
⑥ 번역 확인: 선택한 언어로 번역된 텍스트를 확인하고 필요한 경우 수정할 수 있습니다.
↓ 하기와 같이 특정 언어가 있는 텍스트를 선택하여 번역이라는 버튼을 누르면 언어를 하나씩 변환시킬 수 있습니다.
하지만, 이 과정에서는 여러나라의 언어가 한 텍스트에 있는 경우 등은 번역이 제대로 이루어지지 않으며, 하나하나 수동으로 버튼을 눌러줘야한다는 단점이 존재하므로 이를 VBA로 Google번역기 API를 이용해 원격으로 자동화하는 TOOL을 생각해보았습니다.
2. PPT 모든 슬라이드 자동번역 TOOL 공식설명
우선 VBA로 MSXML이라는 라이브러리와 MS HTML Object라이브러리를 사용하여 모든 슬라이드 내용을 특정 Object에 수납하는 For문을 만들어 딕셔너리와 순환 배열을 이용, 하나하나 HTML오브젝트에 지정한 구글 번역기 URL에 송출시켜 Auto로 지정된 대상 언어를 특정 언어로 번역하는 코드를 짭니다. 이를 통해 모든 슬라이드, 각 슬라이드 내의 모든 오브젝트의 Text를 하나씩 구글 번역기를 활용하여 번역시키는 과정을 반복하게 만들었습니다.
(상세 코드는 최하단의 첨부파일 참조)
↓ 최하단에 공유한 TOOL에서 꼭 필요한 라이브러리 설정
'// 미리 변수를 정의하려면 도구-참조에서 MSXML 과 MS Html Object 라이브러리에 체크
'// to use early binding, goto Tools - References, check MSXML 6.0, Microsoft HTML Object Library
Dim Http As Object 'MSXML2.ServerXMLHTTP
Dim Html As MSHTML.HTMLDocument
3. PPT 모든 슬라이드 자동번역 TOOL 소개, 실제 사용사례
PPT의VBA를 활용한 자동번역 TOOL을 소개합니다. 이 PPT파일을 다운로드받아 Alt+F8버튼(혹은 보기 탭→ 매크로버튼) 을 누르면 하기와 같은 화면이 나타납니다.
하기 화면에서 TranslateCurrentShape의 경우 현재 선택된 도형의 텍스트만 번역하는 매크로이며, 그 밑의 ranslateSildes의 경우 해당 PPT파일에 있는 모든 슬라이드, 모든 도형내의 언어를 자동으로 인식하여 한국어로 번역하는 매크로입니다.
번역이 필요한 다른 PPT의 슬라이드를 하기 자동화 TOOL화된 PPT에 붙여넣어서 매크로를 가동시키면 바로 언어가 번역되는 것을 확인하실 수 있습니다.
↓자동번역 TOOL을 이용한 PPT번역전
↓ 자동번역 TOOL을 이용한 PPT번역후
상세사항은 하단 첨부파일을 확인해주세요. 이 TOOL이 좋으셨거나 추가 언어가 필요하신 경우 댓글을 부탁드립니다.