三流君のソースコード置き場

ブログにソースコードをアップして、ブログの検索機能で利用してます(利用予定です)

よく検索されるキーワード: [VBA]/ [VBS]/ [CreateObject]/ [Excel]/ [ADO]


AIでまとめました 【VBA】Language=409 を追加するだけ!カタカナ英語がネイティブ発音に激変する備忘録

VBA】カタカナ英語を卒業!たった1行で「ネイティブ発音」に変える魔法のコード

VBAの読み上げ機能(SAPI.SpVoice)を使っていて、「英語の発音が日本人的なカタカナすぎて、全然格好良くない…」とガッカリしたことはありませんか?

実はこれ、バグでも仕様でもなく、単に''「英語専用のエンジン」を呼び出していないだけ''なんです。
たった1行、魔法のコードを書き足すだけで、あなたのExcelPowerPointが流暢な英語を話し始めます。

AIがブログを作成しました

【結論】コピペでOK!ネイティブ発音にするソースコード

まずは結論から。以下のコードを標準モジュールに貼り付けてください。ポイントは ''Language=409'' という指定です。

'Windows10 / Microsoft 365 環境で動作確認
Sub NativeEnglishSpeak_Test()
    
    Dim objSAPI As Object
    Set objSAPI = CreateObject("SAPI.SpVoice")

    '【ここが魔法の1行】言語を英語(US)に指定する
    Dim USVoice
    On Error Resume Next 'エンジンがない場合の回避策
    Set USVoice = objSAPI.GetVoices("Language=409")(0) '409はUS英語のID
    On Error GoTo 0

    '取得したボイスをセット
    If Not USVoice Is Nothing Then
        Set objSAPI.voice = USVoice
    End If

    '読み上げ実行
    objSAPI.Speak "Hello! My English pronunciation has dramatically improved."
    
End Sub

どれくらい変わる?動画で「音の激変」をチェック

「たったこれだけで変わるの?」と思った方は、ぜひ動画で音を聞き比べてみてください。
その差は、[01:10](https://www.youtube.com/watch?v=oOiKpfbLww0&t=70s) からの比較を再生した瞬間にわかります。

実装のポイントと解説

1. なぜ「409」なのか?

Windowsの内部では、言語ごとに「ロケールID」という数字が決まっています。

  • ''409'':英語 (United States)
  • ''411'':日本語

デフォルトでは日本語エンジンが無理やり英語を読もうとするため「カタカナ」になりますが、[02:05](https://www.youtube.com/watch?v=oOiKpfbLww0&t=125s) で解説している通り、明示的に409(US)を指定することで、Microsoft Zira などの英語専用エンジンが呼び出される仕組みです。

2. 変数「USVoice」への代入

Set USVoice = objSAPI.GetVoices("Language=409")(0)

この「(0)」は、PCに入っている英語エンジンの中の「1番目」を使うという意味です。

今後の課題とAIアドバイス

今回の手法は非常に強力ですが、以下の点に注意してください。

  • ''エンジンの有無'':お使いのWindowsに英語の音声パッケージがインストールされていないとエラーになります。その場合は「設定 > 時刻と言語 > 音声認識」から英語を追加してください。
  • ''他言語への応用'':409を他のコードに変えれば、フランス語や中国語など、多言語対応のツールも夢ではありません。

''AIからの提案:''
次は、PowerPointの「スピーカノート」に入っている英文を自動でこのネイティブ音声に変換して、プレゼンの練習用MP3を作成するツールに発展させると、さらに需要がありそうですね!

関連リンク

    • -

記事が役に立ったら、ぜひ動画のコメント欄で教えてくださいね!


質問・感想・クレームなど、
気軽にコメント欄に書いてもらえるとうれしいです。

[Googleフォームにコメントを残す]
↑質問・コメントの入力フォームです、気軽に書いてください


フッター:最後にKen3Videoの動画一覧を紹介します

YouTubeにアップした動画です。他の動画を一瞬でも見てもらえるとさらに嬉しいです。
再生リスト:[三流君Ken3の最新動画]←リストの一覧形式で表示する


また、ブログを見に来てくださいね。ではまたぁ~