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

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

挨拶・自己紹介:「こんな感じ」や「あの、あの」と活舌の悪い、
三流プログラマーのオッサンです
Ken3三流君へ問い合わせ・連絡先:
[Ken3(管理者)へメッセージを送る], [YouTube動画にコメントを書く]
※↑質問・感想,コード修正・作成依頼など気軽に送ってください。

Excel VBAで振り仮名取得 Windows 10/11では GetPhonetic で「全候補」が取れない仕様に変わっています!

【結論:Windows 10/11では GetPhonetic で「全候補」が取れない仕様に変わっています!】

ソースコードを冒頭に書く:

Option Explicit

Sub aaa()

    Dim strWORK As String
    Dim strNAME As String '名前
    '呼び出しは簡単で、調べたい文字列を渡す
    strNAME = InputBox("調べたい単語を入力して", "名前などを入力", "羽生")
    '↑羽生 将棋の はぶ先生、スケートの はにゅう どちらが表示されるのかな?
    
    strWORK = Application.GetPhonetic(strNAME)
    While strWORK <> ""
        Debug.Print strWORK
        MsgBox strWORK
        '次の候補を見たいときは、引数無しで呼び出す
        strWORK = Application.GetPhonetic()
    Wend
    
End Sub

「昔は動いたのに…」「羽生の読み方が1つしか出ない」という悩みは、コードのミスではなくOS(IME)の仕様変更が原因です。
Win7とWin10での決定的な違いを、以下のタイムラインから確認してください。

1. 【魔法の瞬間】Win7なら「ハブ」も「ハニュウ」も両方取れる!
タイムライン: 00:54 https://www.youtube.com/watch?v=JoidvQb2BIE&t=54
内容: 古い環境(Win7 + IME 2010)での実演。本来期待していた挙動が確認できます。

2. 【衝撃の事実】Win10では「最初の1つ」で止まってしまう…
タイムライン: 01:46 https://www.youtube.com/watch?v=JoidvQb2BIE&t=106
内容: 最新環境(Win10)での実行結果。ここが現代のVBAユーザーが直面する「罠」です。

3. 【検証結果】他の漢字(トオル)でも同様の結果に
タイムライン: 02:20 https://www.youtube.com/watch?v=JoidvQb2BIE&t=140
内容: 他の多読漢字でもテスト。関数自体の限界を証明しています。

4. 【正直にお伝えします:誠実なポイント】
・この動画は「解決策の提示」ではなく、OSによる「不可解な仕様変更の報告」です。
・「解決できない」という事実を知ることで、無駄な調査時間を削減できます。


皆さんの環境で「OSを上げたらマクロが動かなくなった…」という経験はありますか?
もし他の関数でも怪しい挙動があれば、ぜひコメント欄で教えてください。

#ExcelVBA #GetPhonetic #ふりがな #Windows10 #プログラミング検証


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

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


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

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


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