Office関連

VBAでTTSエンジンの各種情報を列挙する

今回はTTSエンジンの各種情報を列挙するマクロを紹介します。
Microsoft Speech Platformがインストールされていない場合はSAPIからオブジェクトを取得します。

Option Explicit

Public Sub Sample()
  Dim sv As Object
  Dim st As Object
  
  Set sv = CreateSpVoice
  If sv Is Nothing Then Exit Sub
  On Error Resume Next
  For Each st In sv.GetVoices
    Debug.Print "--------------------"
    Debug.Print "ID:" & st.id
    Debug.Print "Name:" & st.GetAttribute("Name")
    Debug.Print "Language:" & st.GetAttribute("Language")
    Debug.Print "Gender:" & st.GetAttribute("Gender")
    Debug.Print "Age:" & st.GetAttribute("Age")
    Debug.Print "Vendor:" & st.GetAttribute("Vendor")
    Debug.Print "--------------------"
  Next
  On Error GoTo 0
  Set sv = Nothing
End Sub

Private Function CreateSpVoice() As Object
  Dim sv As Object

  Set sv = Nothing '初期化
  On Error Resume Next
  Set sv = CreateObject("Speech.SpVoice")
  If Err.Number <> 0 Then
    Set sv = CreateObject("SAPI.SpVoice")
    Err.Clear
  End If
  On Error GoTo 0
  Set CreateSpVoice = sv
End Function

Microsoft Speech Platform Version 11が公開されました。前のページ

2011/09/04次のページ

関連記事

  1. Office関連

    スライド内容を自動的に機械翻訳するPowerPointマクロ

    前回の記事で紹介した各スライドに配置されたオートシェイプからテキストを…

  2. Office関連

    外部アプリケーションのコンボボックスの内容を取得するVBAマクロのサンプル

    Q&Aサイトに下記質問がありました。(この質問も何となく似たような…

  3. Office Scripts

    デスクトップ版ExcelでOffice スクリプトとして操作を記録できるようになりました。

    ※ 本記事で紹介している機能はプレビュー版に基づいており、今後のアップ…

  4. Office関連

    Office 2010 開発者用リファレンスをHTML形式で”快適に”閲覧す…

    前回の記事で7-Zipを使ってHXS形式のOffice製品のヘルプを解…

  5. Office関連

    Word 2013では簡単にウィンドウ ハンドルを取得できるようになりました。

    ※ この情報はOffice 2013 カスタマー プレビュー版を元にし…

  6. Office関連

    「いちばんやさしいPowerPoint VBAの教本」レビュー

    「インストラクターのネタ帳」で有名な伊藤さんが執筆された書籍第二弾、「…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP