|
横から失礼します。
ちょっと試してみました。
A B C
ヤマダタロウ ヤマダタロウ
1 東京都 山田太郎 東京都山田太郎
スズキイチロウ スズキイチロウ
2 神奈川県 鈴木一郎 神奈川県鈴木一郎
Sub test()
Dim k As Long
Dim s1 As String
Dim s2 As String
Dim p
For k = 1 To Range("A1").End(xlDown).Row
s1 = Cells(k, 1).Value
s2 = Cells(k, 2).Value
Cells(k, 3).Value = s1 & s2
Cells(k, 3).Phonetics.Visible = True
For Each p In Cells(k, 2).Phonetics
Cells(k, 3).Characters(Len(s1) + p.Start,1).PhoneticCharacters = p.Text
Next
Next
End Sub
単に、
Cells(k, 3).Characters(Len(s1) + 1, 1).PhoneticCharacters = Cells(k, 2).Phonetic.Text
とすると、
太郎のふりがなであるタロウの位置がずれます。漢字の直ぐ上に来ません。
ですから、上のコードのように、
ふりがなのあるセルの Phonetics コレクションオブジェクトの要素ごとに、
ふりがなを設定する必要があると思います。
(つまり、山田のふりがなと 太郎のふりがな 、それぞれに処理を行うということです。)
---------------------
ちなみに、そもそも論ですが、
> C列に、「住所&ふり仮名付名前」を表示することは出来ないのかと思っています
とのことですが、折角住所と名前が分かれて見やすいのに、
なぜ一つのセルにしてしまうのか、理解に苦しみます。私は改悪だと思います。
また、
> では、結合したセルに文字列を振ることは可能でしょうか?
> 結合した後 値コピーしてふり仮名をつけようとしても出来ません。
> これも無理でしょうか?
とのことですが、
結合セルと言っても、それは結合セルの左上の一つのセルに情報をすべて持っているわけですから、
単一セルでできないことは、結合セルだって同じ状況です。
事態が好転する材料はひとつもありません。
参考になれば幸いです。
|
|