
No.5ベストアンサー
- 回答日時:
#4です。
人間がみて、事実に照らして、間違い分のフリガナの入力は、人手で(私の言う)B1に入力せざるを得ないでしょう。B1(B列)に入力がなければ、現在のフリガナを修正しないようにプログラムを修正してはどうでしょう。垂水をタルミズかタルミかはコンピュタプログラムでは判断は難しい。漢字変換辞書を自由(事実辞書に出る)気がする。
それと現在のフリガナは入力者が誤ったにしろ、漢字変換時にそう言う読みを使ったことは間違いないのです。
なるほど、そうですね。動作確認しましたら、imogasiさんのアドバイスいただいた方法でうまくいきました。本当にありがとうございました。大変勉強になりました。
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の場合の例です。
この回答への補足
回答ありがとうございます。
ふりがなの編集についてですが、例えば「垂水」という単語ですが、本来なら「たるみ」というふりがなですが「たるみず」と表示されてしまいます。これを修正したいのです。
imogasiさんの回答を読ませていただいていたら、第一段階の方法を応用したらできるような気もしてきました。間違っているかもしれませんが、ifかCaseで条件分岐させて、「垂水」であれば
Range("E1").Characters.PhoneticCharacters = "たるみ"でふりがなをふり、データ最終行までLoopさせる・・・とか。今日早速職場で試してみます!
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
ご丁寧に回答をいただきましてありがとうございました。なるほど、こういう書き方ができるんですね。大変勉強になりました。ありがとうございました。
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
とか。あとは、最終行までループするだけです。
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
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelで、社外秘(閲覧のみ)と表示され、共有者が編集出来ないのですが 4 2023/06/20 17:54
- 画像編集・動画編集・音楽編集 ビデオ編集でストライクゾーンを表示させる方法についてアドバイスお願いします。 自分で撮影した野球のビ 1 2022/05/08 09:15
- WordPress(ワードプレス) Wordpress テーマを編集 の編集する枠が表示されない 2 2022/11/19 11:07
- gooブログ ブログの記事を書きだしのみに表示したい 1 2022/06/25 19:11
- Word(ワード) Word 2016のマクロを Word 2021のWordでキー動作させたい 3 2023/04/12 16:14
- その他(クラウドサービス・オンラインストレージ) Teamsで送ったExcelの共同編集について チームのチャネルにExcelを送り、共同編集できるよ 1 2022/05/12 12:29
- Word(ワード) PCで作ったwordをスマホで編集しようとすると「このファイルは読み取り専用です。」と表示される。 3 2023/05/30 14:51
- 農林水産業・鉱業 遺伝子操作で、例えばどんな特性を持った作物を生み出せ食品化することが可能になったのですか? 2 2022/06/30 22:08
- MySQL #1062 - '0' は索引 'PRIMARY' で重複しています。とでています。 1 2023/01/01 06:13
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/09 12:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定の文字がある行以外を削除...
-
VBA マクロ エラー1004 アプ...
-
エクセル 上下で列幅を変えるには
-
エクセルで特定の文字列が入っ...
-
excel 小さすぎて見えないセル...
-
背景色のついたセルの合計数を...
-
結合されたセルをプルダウンの...
-
Openoffice calc セルの結合に...
-
2つのブックで、1レコードの3列...
-
【エクセル】自動で、同じ内容...
-
EXCELで最後の行を固定
-
エクセル マクロで数値が変っ...
-
Excel グラフのプロットからデ...
-
EXCEL VBA マクロ 別シートの...
-
Excel2007で、指定範囲の行高さ...
-
エクセルのマクロで意図しない...
-
EXCELマクロを使い、空白行では...
-
エクセルVBA:リストに登録した...
-
セル範囲に変化があったときに...
-
電話番号の入力方式が違うデー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
特定の文字がある行以外を削除...
-
【Excel関数】UNIQUE関数で"0"...
-
エクセル 上下で列幅を変えるには
-
[EXCEL]ボタン押す→時刻が表に...
-
Excelのフィルター後の一番上の...
-
エクセルで特定の文字列が入っ...
-
excelのデータで色つき行の抽出...
-
エクセル マクロで数値が変っ...
-
Excel グラフのプロットからデ...
-
結合されたセルをプルダウンの...
-
エクセル マクロ オートフィ...
-
excel 小さすぎて見えないセル...
-
Excel ウインドウ枠の固定をす...
-
EXCELで最後の行を固定
-
電話番号の入力方式が違うデー...
-
エクセルVBA 最終行を選んで並...
-
エクセルのセルに指定画像(.jpg...
-
エクセル 時間の表示形式AM/PM...
-
連続データが入った行の一番右...
-
Excelで非表示のセルをとばして...
おすすめ情報