[[20161025103644]] 『郵便番号→住所→ふりがな』(SOS) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『郵便番号→住所→ふりがな』(SOS)

いつもお世話になっております。

名簿の作成で困っております。

例えば503-0000で変換すると「岐阜県大垣市」と入力されます。
そこに同時にフリガナも表示させたいのですが、PHONETIC関数をいれると
表示が503-0000になってしまいます。

これを住所とフリガナを同時に表示させるにはどのようにすればいいでしょうか?

よろしくお願い致します。

< 使用 Excel:Excel2013、使用 OS:Windows7 >


こんにちは

http://www.post.japanpost.jp/zipcode/download.html

から必要な地域の郵便番号データをダウンンロードして検索する仕組みを作ってはどうですか?
(ウッシ) 2016/10/25(火) 10:49


 回答になっていなくてすまないが。

 Private Sub Worksheet_Change(ByVal Target As Range)
    Dim WK_RANGE    As Range

    If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub

    For Each WK_RANGE In Intersect(Target, Range("A:A"))
        WK_RANGE.Value = WK_RANGE.Value
        WK_RANGE.SetPhonetic
    Next
 End Sub
 こういうものを考えたのだが(A列に住所が入力されたときにいったん振り仮名情報を消し
 その後改めて振り仮名情報を付けている)

 これがWindows7+Excel2010の環境で上記を実行するとExcelは動作を停止しましたと出て
 Excelが再起動してしまう。

 回避策がわかる人はいるだろうか?
 (DoEventsは試したが駄目だった)
(ねむねむ) 2016/10/25(火) 11:13

こんにちは

イベントを抑制すれば良さそうです。

Private Sub Worksheet_Change(ByVal Target As Range)

    Dim WK_RANGE    As Range
    If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
    Application.EnableEvents = False
    For Each WK_RANGE In Intersect(Target, Range("A:A"))
        WK_RANGE.Value = WK_RANGE.Value
        WK_RANGE.SetPhonetic
    Next
    Application.EnableEvents = True
End Sub

(ウッシ) 2016/10/25(火) 11:23


被った〜。
同じ環境で、ねむねむさんのコードを機能させても動作停止はしませんでしたが、多重イベントしそうなので、Application.EnableEvents = False が必要に見えます。
(???) 2016/10/25(火) 11:25

 ウッシさん、???さんありがとう。
 (私のほうでもついさっきイベント連鎖に気付いた)

 あと、私のほうではシートに
 =PHONETIC(A1)
 を入れていたのだがこれをなくすとイベントの連鎖だけで済み、ある場合だとExcelの再起動が起こるようだ。

(ねむねむ) 2016/10/25(火) 11:28


こんにちは

B列の数式は消しておいてもらって、

Private Sub Worksheet_Change(ByVal Target As Range)

    Dim WK_RANGE    As Range
    If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
    Application.EnableEvents = False
    For Each WK_RANGE In Intersect(Target, Range("A:A"))
        WK_RANGE.Value = WK_RANGE.Value
        WK_RANGE.SetPhonetic
        WK_RANGE.Offset(,1).Value = WK_RANGE.Phonetic.Text
    Next
    Application.EnableEvents = True
End Sub

にして貰えばいいかも?

(ウッシ) 2016/10/25(火) 11:33


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.