| 
    
     |  | ▼hisao さん: 
 >と言うのは phonetic の対象が関数になるので どうも うまく行きません。
 失礼しました、何も検証はしていなかったので。
 そこで
 
 =VLOOKUP("X",A3:C5,3,False)
 だとしたら、
 
 =PHONETIC(INDEX(A3:C5,MATCH("X",A3:A5,0),3))
 でどうでしょう?
 
 >それと getphonetic では 一旦決めた読みが変わる可能性が有りますね。
 意味がわかりかねますが、
 
 TextBox1とTextBox2を用意して、1をフリガナ、2を入力とします。
 
 下記コードでどうでしょうか?
 入力すれば、自動的に、フリガナがTextBox1に出力されます。
 フリガナが間違っていれば、修正も出来ます。
 フリガナを修正後に、追加で入力しても、フリガナも追加されます。
 ただ、バックスペース等で削除しても、フリガナは削除されません
 
 フリガナの出力方法はいくつかあると思います。
 常にGetPhoneticで出力するとか、フリガナに一度手をつけると、それ以降は変更しないとか。運用を考えて、どれがいいかを決めてください。
 
 '以下コード
 Option Explicit
 
 Private Sub TextBox2_Change()
 
 Static oldText As String
 Dim ChangeText As String
 
 If TextBox2.Value = "" Then
 oldText = ""
 TextBox1.Value = ""
 End If
 
 ChangeText = Mid(TextBox2.Value, Len(oldText) + 1)
 
 TextBox1.Text = TextBox1.Text & Application.GetPhonetic(ChangeText)
 oldText = TextBox2.Value
 End Sub
 
 Public Sub DAINYUU()
 
 Dim rg As Range
 
 Range("A1").Select
 Set rg = Selection
 rg.Value = TextBox2.Value
 rg.Phonetic.Text = TextBox1.Value
 
 TextBox2.Value = ""
 
 End Sub
 
 >例えば range("B1")にカナが有るとして range("B1")の値をrange("A1")の上書きに強制的に持ってくる方法なんて無いでしょうか?
 
 すいません、理解できません。
 
 
 |  |