• ベストアンサー

EXCELでふりがなの編集について

EXCEL2003を使っています。 ふりがなの編集について質問させていただきます。 元々ふりがな情報を持たないデータに、VBAでふりがな表示させたのですが、編集が必要になりました。 編集に関しては1件ずつ手作業で行なわなくてはいけないでしょうか?または、ふりがな表示させる時に、読みをあらかじめ指定しておいて、ふりがな表示をさせることはできるのでしょうか? 宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.5

#4です。人間がみて、事実に照らして、間違い分のフリガナの入力は、人手で(私の言う)B1に入力せざるを得ないでしょう。B1(B列)に入力がなければ、現在のフリガナを修正しないようにプログラムを修正してはどうでしょう。垂水をタルミズかタルミかはコンピュタプログラムで は判断は難しい。漢字変換辞書を自由(事実辞書に出る)気がする。 それと現在のフリガナは入力者が誤ったにしろ、漢字変換時にそう言う読みを使ったことは間違いないのです。

terakura
質問者

お礼

なるほど、そうですね。動作確認しましたら、imogasiさんのアドバイスいただいた方法でうまくいきました。本当にありがとうございました。大変勉強になりました。

その他の回答 (4)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

VBAでフリガナは Sub tst01() Range("E1").Characters.PhoneticCharacters = Range("B1") Range("E1").SetPhonetic Range("E1").Phonetics.Visible = True End Sub の3段階(データソース、設定、表示)に分かれています。 >元々ふりがな情報を持たないデータに そのために第1段階がいります。 >編集が必要になりました。編集に関しては1件ずつ手作業で行なわなくてはいけないでしょうか ものによるのではないですか。どんな編集? >ふりがな表示させる時に、読みをあらかじめ指定しておいて、ふりがな表示をさせることはできるのでしょうか? 上記第1段階です。B1に読みガナを入力し、漢字がE1の場合の例です。

terakura
質問者

補足

回答ありがとうございます。 ふりがなの編集についてですが、例えば「垂水」という単語ですが、本来なら「たるみ」というふりがなですが「たるみず」と表示されてしまいます。これを修正したいのです。 imogasiさんの回答を読ませていただいていたら、第一段階の方法を応用したらできるような気もしてきました。間違っているかもしれませんが、ifかCaseで条件分岐させて、「垂水」であれば Range("E1").Characters.PhoneticCharacters = "たるみ"でふりがなをふり、データ最終行までLoopさせる・・・とか。今日早速職場で試してみます!

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.3

下記のマクロはNo.2をコーディングしたものです。 実際にNo.2の手順3まで行って下さい。 フリガナをふりたいデータはA列、ただしいフリガナはB列にあるとして。 (実際にはデータの1列横ですから、B列とC列などでもOK) 1. A列にあるデータを範囲選択します(複数列の選択はNG) 2. 下記マクロを実行 これで、良いかと。 これ以上の自動化は不可能ですので、ご了承くださいね。 あくまでも、手作業の負担をできる限り軽減するためです。 '1列横に用意してあるフリガナを割当 Sub SetKana2()   On Error GoTo ErrorHandler   Dim Rng As Range   If Selection.Columns.Count > 1 Then     MsgBox "複数列の選択には対応できません.", vbCritical     GoTo ExitHandler   End If   Application.ScreenUpdating = False   For Each Rng In Selection     '次行の.Offset(0,1)は1行横のという意味です。     Rng.Characters.PhoneticCharacters = Trim(Rng.Offset(0, 1).Value)   Next   MsgBox "フリガナを設定しました。", vbInformation ExitHandler:   Application.ScreenUpdating = True   Exit Sub ErrorHandler:   Resume ExitHandler End Sub

terakura
質問者

お礼

ご丁寧に回答をいただきましてありがとうございました。なるほど、こういう書き方ができるんですね。大変勉強になりました。ありがとうございました。

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.2

>ふりがなが完全でない場合、編集は手作業なんでしょうか? このマクロでは、それが限界です。 >読みをあらかじめ指定しておいて、ふりがな表示をさせる A列のデータにB列のフリガナをセットする場合の手法です。 (手順1) 先ほどのマクロで、ある程度フリガナを設定します。 (手順2) A1セルのフリガナをB1に表示させるには、関数PHONETICを使います。 B1のセルに、=PHONETIC(A1) とすれば、B1にフリガナが表示されます。 あとは、オートフィルで最終行まで関数をコピーします。 (手順3) 手順2で得られたフリガナをコピーして、値として貼付け、フリガナを正しく編集。 (手順4) ActiveCell.Characters.PhoneticCharacters = "フリガナ" これは、現在選択されているセルに”フリガナ”というフリガナをセットするマクロです。このコードを参考に、B1セルにある正しいフリガナをA1セルにセットするマクロを作成します。 例えば、 Range("A1").Characters.PhoneticCharacters = Range("B1").value とか。あとは、最終行までループするだけです。

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

こんにちは。 EXCELでは、コピー&ペーストしたデータはフリガナの情報をもっていません。 マクロで強制的にフリガナをふる場合、SetPhonetic を使用します。 以下サンプルです。 フリガナを強制的にふるセルを選択した状態で、マクロを実行します。 'フリガナを強制割当 Sub SetKana()   On Error GoTo ErrorHandler   Dim Rng As Range   Application.ScreenUpdating = False   For Each Rng In Selection     Rng.SetPhonetic   Next   MsgBox "フリガナの強制割当を完了しました。" & Chr(13) & _       "完全ではない場合がありますので、確認願います。" ExitHandler:   Application.ScreenUpdating = True   Exit Sub ErrorHandler:   Resume ExitHandler End Sub

terakura
質問者

補足

ふりがなが完全でない場合、編集は手作業なんでしょうか?

関連するQ&A

  • エクセルをHTMLとして貼り付けるとふりがなが表示される

    Excel2000を使っています。 エクセルで作った表を、OutLook Express 等のhtmlを編集できるエディタ (htmlメールを作る)にコピー&ペーストすると、漢字のふりがなが表示 されてコピーされます。 これを回避する方法はあるでしょうか? 今は、コピー前に次のマクロでふりがなを削除してから 貼り付けています。 Sub Hurigana() Dim c As Range For Each c In Selection c.Characters.PhoneticCharacters = "" Next End Sub この作業も面倒なので、コピー時にふりがな情報を除いてコピーした いのですが、こんな事は可能なのでしょうか? ご存知の情報がありましたら、よろしくお願い致します。

  • エクセルのふりがな関数について

    既に入力してあるデータのふりがなを出したいのですが、phonetic関数を使ってももとある漢字のデータしか表示されません。”書式”の”ふりがな”の”編集”をクリックするとふりがなが表示されるようにはなるのですが、セル1つ1つに対してその操作をしないとふりがなの表示ができません。なんとか一括でふりがなの表示ができる方法はないでしょうか?ご教示ください。

  • エクセルのふりがなを置換したい

    はじめまして。 エクセルでふりがなを置換する方法を教えて下さい。 例えば、    A1 いのき    猪木 A2 うまば    馬場 A3 ちょうしゅう   長州 A4 うまば   馬場 A2とA4のふりがな(うまば)を「すべて置換」で(ばば)にする方法を教えて下さい。(実際は、何千という人名リストにふりがなを編集したい人が点在し、手作業で編集するのは非効率なので) よろしくお願い致します。

  • ふりがなを一括でつけたい。

    Excel2003です。 ツールバーの書式>ふりがな>設定>表示/非表示 を操作して、範囲指定したセルの一群(半角英数、全角はらがなを含む)内の漢字に全てふりがなをつけようとしました。一度成功しました。 その後、別の範囲指定の一群のセルを一括でふりがなを付けようとしましたが、activecell(カドのセル)ひとつだけにふりがながつけられ、他のセルにふりがながつきません。 一度成功しましたので、二回目からの作業手順か環境設定に誤りがあると思います。 問題点と正しい操作手順を教えて下さい。 目的は、セル内の全角ひらが・漢字のできれば全部、または漢字部分にひらがなによるふりがなを付けたいのです。 たしか、ふりがなによって、データのあいうえお順の並び替えができると思います。 よろしくお願いします。

  • WORD で共同編集するには(フリガナ含め)

    Google Doc の共同編集、ものすごく便利ですよね。 しかし、私はフリガナを使う必要があるので、WORD を使っています。WORD文書も Google Docのようにオンラインで複数人で共同編集したいのですが、WORD Online を使ってみたら、フリガナはきちんと表示されません。 フリガナを含めて、WORD文書をオンラインで複数人で共同編集する方法はあるでしょうか? 編集する全員が Word 2016 を買えばいいのかな? なんだか複雑でよくわかりません…。 よろしくお願いいたします。

  • エクセルのvbaでのふりがなについて…

    年賀状のために住所録を作成しているのですが、 住所から簡単に郵便番号を表示できるようにしたいと考えています。 いろいろ調べた結果、アドインのウィザードを使えばできるのは わかっているのですが…それとは別の方法で 住所を7桁の郵便番号で打ち込み、それを辞書ツールで変換して住所を作り、 その部分の振り仮名をphonetic関数で表示すれば郵便番号が 出力できることがわかりました。 しかし、これを今度vbaのユーザーフォームで入力した場合… 住所の部分をユーザーフォームのテキストボックスで入力し、 その住所の振り仮名を隣のセルに出力させようと思ったのですが、 textbox1 = cell(1,2).value の形で持ってくるきた上でエクセルのA1セルに =phonetic(A2) という表示をつけても振り仮名情報までは維持されないようで 振り仮名が表示できなくなってしまいました。 VBAのテキストボックスの中の文字の振り仮名情報などを エクセルのセルなどに転用できるような方法などあるのでしょうか? 説明下手ですみません…わかりにくいと書いていただければ また補足を付け足していこうと思うので… なにとぞ回答のほどよろしくお願いします。

  • エクセルのマクロでフリガナをつけるには

    初歩的なことだと推測しますが、一つのセルに対してメニュー[書式]-[ふりがな]-[編集]でふりがなをつけられるのですが、一度にひとつの列の沢山の漢字の読みを追加するにはどうしたらいいでしょうか。 「新しいマクロの記録」でマクロに操作を記録しても結果が表示されるだけで繰り返し処理に応用できません。 下記の例 ActiveCell.FormulaR1C1 = "・・・" ActiveCell.Characters(1, 3).PhoneticCharacters = "・・・" ActiveCell.Offset(1, 0).Range("A1").Select

  • エクセルのふりがなについて教えてください。

    例えば「幸」(ゆき)を「ゆきこ」で入力して「子」を削除すると「さいわい」になるなど、入力時と違うふりがなになるのですが、なぜでしょうか?入力時の情報が表示されるわけではないのでしょうか?

  • エクセル,ふりがなの自動設定

    エクセル2000で,ふりがな情報をもっていないセル(テキストデータをコピペしたので.)に自動的に標準的なふりがなを設定したいんです. [書式-ふりがな-編集]で,一つのセルの標準ふりがなが設定できるのですが,セルが大量にあるため,マクロか何かを用いて,選択範囲内のセルすべてに標準読み仮名を設定したいんです. どうぞ,誰か教えてくださいm(_ _)m

  • エクセル2010のふりがなの不具合

    私が使用しているWindows7上のエクセル2002と,知り合いの使用しているWindows7上のエクセル2010の「ふるがな」の動作では,次のような違いがあります.エクセル2010の動作は大変不便ですが,2010の元々の仕様でしょうか,或いは何かの設定間違いなのでしょうか? 1,2002の操作/動作.   a)新規のエクセルブックを開き,適当なセルをクリック.   b)[全角/半角]で,かな漢字を有効にする.   c)メニューの[書式]-->[ふりがな]-->[表示/非表示]を    クリックすると,セルの高さが高くなる.   d)セルの中に「山田」と入力し,かな漢字を確定する.   e) 「ふりがな」が「山田」の上に表示される. 2.2010の操作/動作.   上のa)からd)までの操作をしても,「山田」の上に「ふりが   な」は表示されない.   [ふりがな編集」をクリックすると,「山田」の上に初めてふ   りがなが表示される.   ふりがなを表示するときは,漢字の入力の後でいつでも   個々のセルごとに [ふりがな編集]をクリックする必要がある.   

専門家に質問してみよう