TTSで文字列を読み上げるマクロ」でGoogle翻訳の音声再生機能を利用した文字列の読み上げマクロを紹介しましたが、このマクロは対象文字列の言語を指定しなくてはいけません。Google翻訳には自動で言語を検出する機能も備わっており、この機能も実装できればより便利になるだろうと思って調べてみました。仕組みを調べるためにGoogle翻訳で言語を自動検出したとき、「言語を検出する」ボタンをクリックしたときのHTTPヘッダを見てみると、下記のようになっていました。http://translate.google.com/translate_a/t?client=t&text=%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%82&hl=ja&sl=auto&tl=en&multires=1&prev=conf&psl=ja&ptl=en&otf=1&.........各パラメータが何を表しているのかは置いておいて、特に重要そうなのは「sl」と「text」。slで自動検出するために「auto」を渡して、textではエンコードされた文字列を渡しているだろうことが推測できます。そこで試しに下記のようなURLにしてみると、http://translate.google.com/translate_a/t?sl=auto&text=%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%82403エラーが返ってきました。「sl」と「text」だけでは足りないようなので、今度は「client」も付けてみます。http://translate.google.com/translate_a/t?client=t&sl=auto&text=%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%82今度は「t」という名前のテキストファイル(Content-Type:text/javascript)が返ってきました。この「t」の中身をテキストエディタで見てみると、下記のようになっています。","","Kon'nichiwa."]],,"ja",,[["Hello",[5],1,0,820,0,1,0],[".",[6],0,0,820,1,2,0]],[["こんにちは",5,[["Hello",820,1,0],["Hi",71,1,0]],[[0,5]],"こんにちは。"],[".",6,[[".",820,0,0]],[[5,6]],""]],,,[["ja"]],17]パッと見JSON形式のようで、検出されたと思われる言語「ja」も記載されています。ここまで分かれば後はこの「ja」を取得するコードを書けば良いだけなのですが、先ほど返ってきた「t」というファイル名、これが気になるので、関係すると思われる「client」の値を試しに変更してみました。http://translate.google.com/translate_a/t?client=callback&sl=auto&text=%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%82すると先ほどと同じく「t」ファイルが返ってきたのですが、中身を見ると下記のようになっていました。{"sentences":[{"trans":"Hello.","orig":"こんにちは。","translit":"","src_translit":"Kon'nichiwa."}],"src":"ja","server_time":49}「client」の値は返ってくるファイル名と関係無いようでしたが、ファイルの中身は先ほどよりも各値の内容が推測しやすいものになっています(src:検出された言語)。この「client」の値をabcや123等と変更してみましたが、「t」以外は上記のような形になるようです。データの形式としては「t」で返ってきたものよりも、こちらのデータを使用した方が扱いやすそうなので、このデータを使って言語を自動検出するマクロを早速考えてみます。(“src”以外の”trans”や”src_translit”も色々利用できそうですが、今回は言語を検出すれば良いだけなので”src“のみを使います。Function対象文字列を引数として、GETした結果をJSONとして受け取り”src“のみを返すという、ごく単純なマクロです。TTSで文字列を読み上げるマクロ」に上記コードを組み込んでみることにします。「...Office関連VBE用のCOMアドインをメモ帳で作ってみる。Drive」ボタンを試してみました。下記情報はInsider版のOfficeを元にしています。Officeを使ってみた。引用SplitButtonの代わりに、通常のボタンとMenu要素で類似の事ができる事が判ったので、試して見ました。一概には言えないのですが、ラベルはSplitButtonの方が収まりが良いようです。これまでSplitButtonの上半分は、アイコンの置き場としてしか使ってませんでしたが、ガイドメッセージが出るように直したので、迷わず扱えるようになったと思います。URL返信をキャンセルする。API]他形式での出力とサイ...他形式での出力とサイズ変更を行う※2020年1月現在、Photoshop...2020.01.30第7回デルアンバサダー座談会が豪華過ぎて驚愕した話...1月24日(金)に“デルアンバサダー座談会”が開催されました。APIはベータ版です。アドインやリボンのカスタマイズに関する話題を中心に情報発信しています。バーに独自マクロ(自作ボタン)を追加して、アドイン...2012.04.20クイックアクセスツールバーからPowerPoint...先日書いた「...2017.02.21どのブラウザーが最強なのかを調べてみたよ。