Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7897 / 76734 ←次へ | 前へ→

【74418】Re:ふり仮名付の文字を隣のセルに表示するには
発言  γ  - 13/6/2(日) 14:33 -

引用なし
パスワード
   横から失礼します。
ちょっと試してみました。

  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列に、「住所&ふり仮名付名前」を表示することは出来ないのかと思っています
とのことですが、折角住所と名前が分かれて見やすいのに、
なぜ一つのセルにしてしまうのか、理解に苦しみます。私は改悪だと思います。

また、
> では、結合したセルに文字列を振ることは可能でしょうか?
> 結合した後 値コピーしてふり仮名をつけようとしても出来ません。
> これも無理でしょうか?
とのことですが、
結合セルと言っても、それは結合セルの左上の一つのセルに情報をすべて持っているわけですから、
単一セルでできないことは、結合セルだって同じ状況です。
事態が好転する材料はひとつもありません。

参考になれば幸いです。

2 hits

【74405】ふり仮名付の文字を隣のセルに表示するには 田中 13/5/29(水) 22:59 質問
【74406】Re:ふり仮名付の文字を隣のセルに表示する... kanabun 13/5/29(水) 23:15 発言
【74413】Re:ふり仮名付の文字を隣のセルに表示する... 田中 13/5/31(金) 21:34 質問
【74414】Re:ふり仮名付の文字を隣のセルに表示する... kanabun 13/5/31(金) 22:19 発言
【74415】Re:ふり仮名付の文字を隣のセルに表示する... 田中 13/6/1(土) 7:35 質問
【74416】Re:ふり仮名付の文字を隣のセルに表示する... kanabun 13/6/1(土) 10:31 発言
【74417】Re:ふり仮名付の文字を隣のセルに表示する... 13/6/1(土) 17:39 回答
【74418】Re:ふり仮名付の文字を隣のセルに表示する... γ 13/6/2(日) 14:33 発言
【74419】Re:ふり仮名付の文字を隣のセルに表示する... 田中 13/6/3(月) 7:22 お礼
【74420】Re:ふり仮名付の文字を隣のセルに表示する... γ 13/6/3(月) 19:57 発言

7897 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free