엑셀 텍스트 음성 변환 기능 :: VocSpeak 명령문 사용하기

텍스트를 지정한 언어로 읽어주는 텍스트 음성 변환 함수 VocSpeak 명령문의 사용법 및 동작원리을 알아봅니다.

홈페이지 » 엑셀 텍스트 음성 변환 기능 :: VocSpeak 명령문 사용하기

엑셀 텍스트 음성 변환 :: VocSpeak 명령문 사용법 총정리

엑셀 VocSpeak 명령문 목차 바로가기
요약

엑셀 VocSpeak 명령문은 텍스트를 지정한 언어로 읽어주는 텍스트 음성 변환 함수입니다. 음성 변환 기능을 사용하려면 PC에 해당 언어팩이 설치되어 있어야 합니다.

윈도우 언어팩 설치방법은 아래 관련 링크를 참고하세요.

명령문 구문
= VocSpeak ( 텍스트, 사용언어 )
사용된 인수 및 변수 알아보기

 

인수설명
텍스트
[String]
음성으로 변환할 텍스트입니다. 사용언어가 읽을 수 있는 텍스트여야합니다.
예를들어, =VocSpeak("사과","English")를 입력하면 텍스트는 "한글", 사용언어는 "영어"이므로 음성 변환을 할 수 없습니다.
사용언어
[String]
텍스트를 읽을 대상 언어입니다. 사용언어는 반드시 영문으로 입력해야 합니다. 예를들어 한국어는 "Korean" 중국어는 "Chinese"로 입력합니다. 윈도우는 총 40개 언어를 63개 목소리로 지원합니다. 지원되는 언어 목록은 아래 별도의 표로 준비해드렸습니다.

만약 사용언어가 여러 사람의 목소리를 지원할 경우, 특정 인물의 목소리를 지정할 수도 있습니다. 예를들어 미국식 영어에는 "David, Mark, Zira" 3명의 목소리를 지원하며 사용언어로 "David"를 입력하면 남성 목소리로 출력됩니다.

예제파일 다운로드

상세 설명

VocSpeak 함수는 지정한 텍스트를 음성 변환하여 읽어주는 엑셀 사용자 지정함수입니다. 음성 변환할 대상 언어의 언어팩이 반드시 설치되어 있어야 합니다. 현재 PC에서 사용가능한 언어 목록을 출력하려면 GetVocList 함수를 사용하세요.

윈도우는 총 40개 언어를 63개의 목소리로 텍스트 음성 변환을 지원하며, 지원되는 음성 변환 목록은 아래 표와 같습니다. 사용언어로는 "Korean", "Chinese", "English" 외에 특정 인물을 지정할 수도 있습니다. 예를들어 "Haemi"를 입력하면 한국어 단어를 여성 목소리로 읽어줍니다.

언어(참고용)사용언어남성 목소리여성 목소리
아라비아어ArabicHoda
아랍어 (사우디 아라비아)Arabic (Saudi Arabia)Naayf
브라질어Brazil (pt-BR)DanielMaria
스페인어Catalan Spanish (Spain)Herena
중국어China (zh-CN)KangkangHuihui, yaoyao
체코어Czech (Czech Republic)Vit
덴마크어DanishHelle
네덜란드어DutchFrank
영어 (호주)English (Australia)JamesCatherine
영어 (캐나다)English (Canada)RichardLinda
영어 (영국)English (Great Britain)GeorgeHazel, Susan
영어 (인도)English (India)RaviHeera
영어 (아일랜드)English (Ireland)Shaun
영어 (미국)English (United States)David, MarkZira
핀란드어FinnishHeidi
플랑드르어Flemish (Belgian Dutch)Bart
프랑스어 (캐나다)French (Canada)ClaudeCaroline
프랑스어 (프랑스)French (France)PaulHortence, Julie
독일어 (독일)German (Germany)StefanHedda, Katja
독일어 (스위스)German (Switzerland)Karsten
그리스어GreekStefanos
힌디어Hindi (India)HermantKalpana
광동어(홍콩어)Hong Kong (zh-HK)DannyTracy
헝가리어 (헝가리)Hungarian (Hungary)Szabolcs
인도네시아어 (인도네시아)Indonesian (Indonesia)Andika
이탈리아 사람ItalianCosimoElsa
일본어JapaneseIchiroAyumi, Haruka
노르웨이 인NorwegianJon
폴란드어 (폴란드)Polish (Poland)AdamPaulina
포르투갈어 (포르투갈)Portuguese (Portugal)Helia
루마니아어 (루마니아)Romanian (Romania)Andrei
러시아어 (러시아)Russian (Russia)PavelIrina
슬로바키아어 (슬로바키아)Slovak (Slovakia)Filip
한국어KoreanHeami
스페인어 (스페인)Spanish (Spain)PabloHelena, Laura
스페인어 (멕시코)Spanish (Mexico)RaulSabina
스웨덴어SwedishBengt
대만어Taiwan (zh-TW)ZhiweiYating, Hanhan
태국어Thai (Thailand)Pettara
터키어TurkishTolga
실전 사용 예제
  1. 단어를 PC에서 지원하는 영어 음성 변환 목록 중 첫번째 항목으로 변환하기
    Sub Test()
     
    'PC에서 지원하는 첫번째 영어 음성변환 기능으로 텍스트 음성 변환 합니다.
    VocSpeak "Apple", "English"
     
    End Sub
  2. 영어 단어를 여자 목소리로 음성 변환 하기
    Sub Test2()
     
    ' 영어 단어를 여성 목소리로 음성 변환합니다.
    VocSpeak "Apple", "Zira"
     
    End Sub

엑셀 텍스트 음성변환, VocSpeak 명령문 동작원리

VocSpeak 명령문 전체 코드
'###############################################################
'오빠두엑셀 VBA 사용자지정함수 (https://www.oppadu.com)
'▶ VocSpeak 함수
'▶ 단어를 특정 언어로 읽어주는 텍스트 음성 변환 함수입니다.
'▶ 인수 설명
'_____________Voca                  : 음성 변환 할 텍스트입니다.
'_____________Language          : 텍스트를 읽을 대상 언어입니다. 사용중인 PC에 해당 언어팩이 설치되어 있어야 합니다.
'###############################################################
 
Sub VocSpeak(Voca As Variant, Language As String)
 
' 변수 생성
Dim Voc As Object
Set Voc = CreateObject("SAPI.SpVoice")
 
' 가용한 음성 변환 목록을 하나씩 돌아가며 사용 언어와 일치하는 항목이 있는지 확인
For i = 0 To Voc.GetVoices.Count - 1
    Set Voc.Voice = Voc.GetVoices.Item(i)
    If InStr(1, Voc.Voice.GetDescription, Language) Then GoTo Speak
Next
 
'일치하는 항목이 없을 경우 안내메시지 띄우고 함수 종료
MsgBox "음성 변환 할 언어가 PC에 설치되어 있지 않습니다.", vbInformation, "오빠두엑셀 - 오류안내"
 
Exit Sub
 
' 가용한 음성 변환 항목이 있을 시 음성 변환 후 명령문을 종료합니다.
Speak:
Voc.Speak Voca
 
End Sub
명령문 동작원리 단계별 알아보기
  1. 변수를 생성합니다.
    ' 변수 생성
    Dim Voc As Object
    Set Voc = CreateObject("SAPI.SpVoice")
  2. PC의 사용가능한 음성 변환 목록을 하나씩 돌아가며 사용언어와 비교합니다.
    ' 가용한 음성 변환 목록을 하나씩 돌아가며 사용 언어와 일치하는 항목이 있는지 확인
    For i = 0 To Voc.GetVoices.Count - 1
        Set Voc.Voice = Voc.GetVoices.Item(i)
        If InStr(1, Voc.Voice.GetDescription, Language) Then GoTo Speak
    Next
  3. 일치하는 항목이 없을 경우 오류메시지를 띄우고 함수를 종료합니다.
    '일치하는 항목이 없을 경우 안내메시지 띄우고 함수 종료
    MsgBox "음성 변환 할 언어가 PC에 설치되어 있지 않습니다.", vbInformation, "오빠두엑셀 - 오류안내"
     
    Exit Sub
  4. 가용한 음성 변환 항목이 있을 시 음성 변환 후 명령문을 종료합니다.
    ' 가용한 음성 변환 항목이 있을 시 음성 변환 후 명령문을 종료합니다.
    Speak:
    Voc.Speak Voca
현재 페이지 댓글알림 신청
알림 설정
guest
0 Comments
Inline Feedbacks
View all comments
0
여러분의 생각을 댓글로 남겨주세요.x