Excel 2010 でも日本語の読み上げ機能を使う方法
先に紹介した際は、Word 2010や PowerPoint 2010、そして、Outlook 2010であれば日本語で書いてある内容を読み上げてくれるようになりました。しかし、Excel 2010 だけが英数字だけの読み上げで、日本語の部分を読み上げません。これは、Excel 2010が日本語のTTSエンジンである「Haruka」ではなく、OS の「音声合成」である「Microsoft Anna - English」を使ってしまうからだとわかりました。
Office 2003/2002 日本語版を同時に搭載している場合は、Excel 2003/2002 が持っている音声合成を使うと日本語で読み上げてくれます。しかし、Office 2010単体搭載機の場合は、それができません。
さて、どうしたものか!?と思っていたところ、Excel 2010 で日本語エンジンの「Haruka」を使わせる方法を Office 2007/2010・リボンのカスタマイズ 初心者備忘録 の「きぬあさ」さんに教えていただきました。きぬあさ さん!情報提供に感謝いたします。
その方法なのですが、マクロを使います。それと、Excel 2010 が日本語エンジンに対応するまでの一時しのぎ的な対処方法です。
マクロを実行するには、事前に SpeechPlatformRuntime.msi と MSSpeech_TTS_ja-JP_Haruka.msi をインストールします。やり方は、Office 2010 で読み上げ機能を追加するを参考にしてみてください。
Excel 2010 でマクロを使う準備をする
今回は、Excelに「マクロ」という自分で作ったプログラムを使わせるという作業をします。まずは、Excel 2010 に「開発」タブを表示させましょう。
- Excel 2010 を起動
- 「ファイル」を開いて「オプション」をクリック
- 「Excel のオプション」が開いたら、左側の欄より「リボンのユーザー設定」を選択
- 右にある「リボンのユーザー設定」が「メイン タブ」になっているのを確認
- 「メイン タブ」の一覧にある「開発」にチェックを付ける
- 「OK」で「Excel のオプション」を閉じる
- Excel 2010 のタブに「開発」が追加されたのを確認する
以上で準備が整いました。それでは、早速、マクロを作ってみましょう。
- Excel 2010 の「開発」タブを開く
- リボン内にある「Visual Basic」をクリック
- Microsoft Visual Basic for Applications が起動します。
- 「挿入」から「標準モジュール」をクリック
- 左側の枠に新規の「標準モジュール」が追加され、右側にエディタが開きます。
- エディタ部分に下記のコードをコピーして、貼り付けます。
'選択セルの読み上げ
Public Sub Sample2()
Dim sv As SpeechLib.SpVoice
Dim i As Long
'セル以外を選択していたら終了
If TypeName(Selection) <> "Range" Then Exit Sub
'2セル以上選択していたら終了
If Selection.Cells.Count > 1 Then Exit Sub
Set sv = New SpeechLib.SpVoice
For i = 0 To sv.GetVoices.Count - 1
If InStr(sv.GetVoices.Item(i).GetDescription, "ja-JP") Then
Set sv.Voice = sv.GetVoices.Item(i)
Exit For
End If
Next
If InStr(sv.Voice.GetDescription, "ja-JP") < 1 Then Exit Sub
sv.Speak Selection.Value
Set sv = Nothing
End Sub
※今回、書いていただいたコードは、「現在選択中のセルを1つだけ読み上げる」というものです。 - Microsoft Visual Basic for Applications の「ツール」より「参照設定」を開く
- 「Microsoft Speech Object Library」の「場所」が C:\Program Files\Common Files\Microsoft Shared\Speech\Platform\v10.1\mssps.dll の方にチェックを入れる。
※「Microsoft Speech Object Library」は、2つ見つかるかもしれません。「Microsoft Speech Object Library」を選択し、一覧の下に表示される「場所」でどちらにチェックを付けるのか確認してください。 - 「OK」ボタンをクリックして「参照設定」を閉じます。
- Microsoft Visual Basic for Applications の「ファイル」より「Book1 の上書き保存」をクリック
- 「名前を付けて保存」が開くので「ファイルの種類」の▼ボタンを押して「マクロ有効テンプレート」にして、自分のわかりやすい名前を付ける。この際の保存場所ですが、自動的にテンプレートの保存フォルダーに代わることでしょう。そのまま、保存ください。
- Microsoft Visual Basic for Applications を閉じる。
マクロファイルの使い方
- Excel 2010 を起動し、「ファイル」の「新規作成」から「マイテンプレート」を選択し、今回作成したテンプレートを開く。
- データを入力する。
- 読み上げてほしい部分のセルをマウスで1つ選択する
- 「開発」タブを開き、「コード」内にある「マクロ」をクリック
- 「マクロ」が開くので「実行」ボタンをクリック
- 選択したセルの部分が日本語で読み上げられる。
さて、こうして作ったExcel ファイルの保存時です。自分だけで使い、これからもデータを日本語で読み上げて欲しい場合は、「ファイルの種類」を「Excel マクロ有効ブック(*.xlsm)」にして名前を付けて保存してください。よそ様に渡す場合は、マクロを有効にしていても他のパソコンでは読み上げません。マクロを無効にする「Excel ブック(*.xlsx)」、もしくは、「Excel 97-2003 ブック(*.xls)」にして保存します。
ところで、マクロが載っているファイルを開くと、初回のみ「セキュリティの警告」バーが表示されます。そのままでは、マクロが無効になっているので「コンテンツの有効化」ボタンをクリックしてください。
2010年7月16日 追記:
いちいち、「開発」タブの「マクロ」を開いて「実行」をクリックするのは面倒…と思っていたら。Office 2007/2010・リボンのカスタマイズ 初心者備忘録 の「きぬあさ」さんがリボン内に実行コマンドを組み込んだマクロテンプレートを作ってくださいました。Excelで日本語の読み上げ機能を使う(Excel VBA)でどうぞ。
2012年4月13日 追記:
きぬあさ さんが日本語の読み上げツールを作ってくださいました。日本語の読み上げツール for Excel 2007/2010の詳細情報 : Vector ソフトを探す!
使い方は、Excelで日本語の読み上げ機能を使う(Excel VBA)でどうぞ。
2013年4月22日 追記:
Office 2013の場合は、Windows 8 のOffice 2013に読み上げ機能を追加してみたを参照ください。
« Office Web Apps で作成したファイルを開きたい | トップページ | Windows 7 と Windows Server 2008 R2 の Service Pack 1 (SP1) Beta 公開 »
「アクセシビリティ」カテゴリの記事
- Windows 10 Ver.1903 の「カーソルとポインターのサイズ」(2019.04.27)
- Edge で「カーソル ブラウズ」の設定変更方法は?【2019年4月現在】(2019.04.14)
- テキストサイズを変更する:Windows 10 Ver.1809(2018.10.29)
- Windows 10 IP:テキストサイズのみを大きくできる (Build 17692)(2018.06.15)
- Windows 10:モニター画面が白黒になった(2017.12.03)
「MS Office」カテゴリの記事
- Office 2016 で「Microsoft 365 を試す」が表示される(2020.09.23)
- Office 非搭載機で「Word」や「Excel」などのタイルを再表示したい(2020.05.05)
- Office で「接続済みサービス」を追加する(2020.03.29)
- スマホ用 Office アプリ公開(2020.03.11)
- Excel や Word がいつもと違う表示になり「読み取り専用」で開く(2020.02.22)
コメント
この記事へのコメントは終了しました。
トラックバック
この記事へのトラックバック一覧です: Excel 2010 でも日本語の読み上げ機能を使う方法:
» Excel 2010 でも日本語の読み上げ機能を使う方法 [.NET Clips]
素敵なエントリーの登録ありがとうございます - .NET Clipsからのトラックバック [続きを読む]
« Office Web Apps で作成したファイルを開きたい | トップページ | Windows 7 と Windows Server 2008 R2 の Service Pack 1 (SP1) Beta 公開 »
おはようございます。
私のトコでもページ追加したのを伝えにきたら、もう更新されてる!!
さすがです!!(^-^)
あっ、私の所に載せているコードはちょっとだけ変更しています。
(内部の仕組みは同じものですが)
参照云々する部分が面倒だったので…(^^;
投稿: きぬよあさみ | 2010年7月16日 10:05
きぬよあさみさん、いらっしゃいませ!
先に気がついてしまいました。
またどうぞ、よろしくお願いいたします。
投稿: ラム | 2010年7月16日 10:27
こんにちは、きぬあさです。
そういえばExcelじゃないですけど、Word 2010って一太郎コンバータ無いですよね~(?_?)
↓にもありましたが。
http://office.microsoft.com/ja-jp/word-help/HA101785405.aspx
コンバータだけ無理矢理旧バージョンから持ってくることもできましたが、公式にはいつ出てくるのか…。
ラムさんの方では何か聞いたことありますか?
投稿: きぬよ&あさみ | 2010年7月17日 15:18
きぬあささん、いらっしゃいませ!
「Word 2010の一太郎コンバータ」
さて、私の所では、特に情報をいただいていません。
こういうのは、Word が専門の方に聞いてみてくださいね。
投稿: ラム | 2010年7月17日 15:33
こんにちは。
> さて、私の所では、特に情報をいただいていません。
> こういうのは、Word が専門の方に聞いてみてくださいね。
了解しました!
今度チラッと聞いてみます
投稿: きぬよ&あさみ | 2010年7月18日 10:11
HPを参考に、下記PGをインストールして実行しました。
SpeechPlatformRuntime(x64)
MSSpeech_TTS_ja-JP_Haruka
Set sv = New SpeechLib.SpVoiceところでエラー429が発生してしまいActiveXコンポーネントを作成できませんでしたとなります。
原因がわからず悩んでいます。
私のPCはAcer ASPIRE5741 64ビットだと思います。
ご教示いただけないでしょうか・
投稿: さむ | 2011年4月17日 01:30
さむさん
情報をいただきましたので、お知らせします。
Windows 7 64bit に Office2010 32bit 版をインストールしていませんか?
どうも、そのためのエラーのようです。
投稿: ラム | 2011年4月23日 14:47