こちら↓でルビを一括で削除するマクロを紹介しています。
http://oshiete1.goo.ne.jp/qa3327909.html
ここでのマクロの一部の仕様(?)に疑問に思うことがあり、質問をして
この仕様の理解を深めたいと思っています。
> With Selection
> .Range.PhoneticGuide ""
> End With
「 PhoneticGuide 」はルビを追加したりするメソッドのようですが、
ルビを解除するマクロ記録をとるとこのメソッドが記録されて、上記
のような「 PhoneticGuide "" 」となっています。
これを利用して一括マクロを作成し、ルビを解除することは確かに可能
なのですが、本文内に別のフィールドコードで作成されたものも同時に
解除されてしまいます。
これは「 PhoneticGuide "" 」がルビだけを対象にしているのではない
メソッドだからなのでしょうか?
最初に載せたURL先のマクロ内容を、どのように変更をしたらルビ以外
のフィールドコードを対象から外すことが出来るのでしょうか。
「 PhoneticGuide "" 」の利用の仕方と、他のフィールドコードに影響
を与えない方法をご存知の方は教えてください。
No.1ベストアンサー
- 回答日時:
こんにちは。
そのコードを書いたWendy02です。どうもです。(^^;
>最初に載せたURL先のマクロ内容を、どのように変更をしたらルビ以外
>のフィールドコードを対象から外すことが出来るのでしょうか。
今、掲示前のコードをみると、元は、そのための考慮はされていました。そのURLのご質問者さんの元のドキュメントの大きさなどを考慮して、たった判別する1行なのですが、極力、省メモリで書いたのです。
元のコードは、こういう内容です。
Sub orgFuricanaClear()
Dim f As Variant
With ActiveDocument
For Each f In .Fields
If InStr(f.Code.FormattedText.Text, "\up") > 0 Then
f.Select
With Selection
.Range.PhoneticGuide ""
End With
End If
Next
End With
End Sub
>PhoneticGuide
フィールドコード側が、私の勘違いでなければ、\upというスイッチが入りますので、それが判定できるものだと思っています。
>これは「 PhoneticGuide "" 」がルビだけを対象にしているのではないメソッドだからなのでしょうか?
もしかしたら、東アジアバージョンのみにしかなく、ユニバーサルに存在するフィールドコードとのマッチング(整合性)については、考慮されていないのかもしれません。
この回答への補足
回答している私としても反省する部分ですが、私のWordのバージョンは
Office XPにあるWord2002です。
質問文に載せたURL先でのバージョンはWord2000ですが、Word2002以降
との違いはあるのでしょうか?
それから
>フィールドコード側が、私の勘違いでなければ、\upというスイッチ
>が入りますので、それが判定できるものだと思っています。
これについて今試してみると、数式エディタの変わりに作成した数式の
一部が解除されてしまいました。\upスイッチで判別させるのは注意が
必要なようです。
そこでWord2002のルビ機能を使用したときに入る"\* jc2"を "\up"の
替わりにしても良いようですね
Sub orgFuricanaClear()
Dim f As Variant
With ActiveDocument
'一部変更
For Each f In .Fields
If InStr(f.Code.FormattedText.Text, "\* jc2") > 0 Then
f.Select
With Selection
.Range.PhoneticGuide ""
End With
End If
Next
End With
End Sub
これでルビだけを対象にすることは可能なようです。
ただし、ルビ部分を太字や斜体にするために"\* jc2"を削除していると
意味がないですが、私が通常使う分にはこちらのほうが使い勝手が良い
ようです。
実はこの質問を立ち上げた理由の一つに、フリーで紹介しているのWord
のアドインテンプレートを利用すると、ルビ以外のフィールドコードが
解除されるために、質問文のURL先で紹介しているマクロと同じもので
作成しているのではないかと思っていまして、今回のことをきっかけに
自分用のマクロを用意しておこうと思ったことがきっかけです。
もっと使い勝手が良いものを思いつきましたら、わがままな補足ですが
マクロを載せていただくと嬉しいです。
今回の回答も、今後の使用においてとても役にたつものだったので回答
をしてくださり、嬉しくなりました。本当にありがとうございました。
早速の回答ありがとうございます。
いつもマクロ関係では勉強させていただいており、今回も勉強のつもり
でお気に入りに入れていた質問内容を、いろいろ試す段階で疑問に思う
ことがあり、珍しく質問しました。
>東アジアバージョンのみにしかなく、ユニバーサルに存在するフィールドコード
>とのマッチング(整合性)については、考慮されていないのかもしれません。
これは確かに考えられますね。
フィールドコードそのものはユニバーサルに通じるWordの機能なので、
それを利用したルビについては PhoneticGuide を用意していても削除
することにはあまり考慮したものではないのかもしれませんね。
今回の回答も本当に勉強になりました。今後も何かとお世話になるかも
しれませんがよろしくお願いします。
No.2
- 回答日時:
enunokokoro様
こんばんは。
いつもタイミングよくサポートしていただき、この場を借りて、改めて御礼申し上げます。
>質問文に載せたURL先でのバージョンはWord2000ですが、Word2002以降
>との違いはあるのでしょうか?
この件に関してはありませんが、そのURL先の内容では、Word2000とWord2002以降の違いは、検索や置換に影響があります。フィードコードを表示させないと検索できません。Word2000 は、マクロとしても、他にも簡単な部分で違うところがあります。どうやら、Excelとは違い、Wordは、Word2000とWord2002以上では、かなり違いがありそうです。
"\* jc2" は、私のほうも修正しておきました。ありがとうございました。私は、人にはいくつかの本を薦めるくせに、実は、Wordに関する資料なんていうのは、ほとんどないに等しいのです。かろうじて、「Office 97プログラマーズガイド」程度です。(^^;
今回のマクロの周辺に関しては、一応、この後は、オン・デマンドにさせていただきます。
ところで、Wordのマクロは、COMアドインが多いので、結構、この先、困ることが多くなるのではないか、と思っています。まさか、あまり先走って、VSTO(旧Develper)なんて高いものを買うのは、散財になってしまうので、しませんが、さりとて、VB.Net も、いまひとつ、勉強する気が起こらないので、先行きの見通しが暗いです。
それと、少し、Word VBAも休んでいると分からなくなってしまいます。鈍らない程度には、やっていないと、本当に忘れます。
再度の回答ありがとうございます。
Word2000とWord2002以降のマクロの違いは確かに感じています。
ルビの設定するマクロでも、Word2000用のマクロを使うと動作が異常に
なることがあったり、作業ウィンドウや描画キャンバスの関係での違い
があったりするようですから。
WordのマクロはExcelほど情報量が無いので、ここでWendy02様が回答を
しているものを参考にしたりして、ぼちぼち利用してり勉強したりして
います。
OfficeはExcelが基本になっているようで、Wordなどはおこぼれ扱いで
あるので、勉強するのも大変ですから、私もあまり手を出さないように
しています。
基本的なところは理解ができましたので、今回の質問についてはこれで
締め切らせていただきます。
Wendy02様が今後も活躍されますよう願いつつ、お礼申し上げます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
これまでで一番「情けなかったとき」はいつですか?
これまでの人生で一番「情けない」と感じていたときはいつですか? そこからどう変化していきましたか?
-
スマホに会話を聞かれているな!?と思ったことありますか?
スマートフォンで検索はしてないのに、友達と話していた製品の広告が直後に出てきたりすることってありませんか? こんな感じでスマホに会話を聞かれているかも!?と思ったエピソードってありますか?
-
モテ期を経験した方いらっしゃいますか?
一生に一度はモテ期があるといいますが、みなさんどうですか? いまがそう! という方も、「思い返せばこの頃だったなぁ」という方も、よかったら教えて下さい。
-
あなたの人生で一番ピンチに陥った瞬間は?
これまでの人生で今振り返ると「あの時、1番ピンチだったなぁ...」という瞬間はありますか?
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
ルビの削除、検索について
Word(ワード)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WPSOffice_マクロの有効化について
-
Excel マクロの編集がグレーに...
-
エクセル ボタンに設定したマク...
-
複数のマクロボタンをまとめて...
-
Excelのマクロでボタンを押すと...
-
なぜマクロの記録がなくなって...
-
エクセル マクロ名にブック名...
-
Excelマクロで、稼働中のマクロ...
-
エクセルでマクロ(Excel 4.0)...
-
エクセルの、記録を終了したマ...
-
エクセルで、「いいね」のよう...
-
Excel:マクロを消す方法教えて...
-
エクセル マクロが削除できな...
-
エクセルの表を複数枚印刷した...
-
個人用マクロのショートカット...
-
エクセルで作られた?マクロを...
-
Excelのマクロ名の並び順の法則...
-
エクセルで明日の日付を表示す...
-
TeraTermマクロでctrl+alt+del...
-
スプレッドシートの文字の色判定
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WPSOffice_マクロの有効化について
-
Excel マクロの編集がグレーに...
-
エクセル ボタンに設定したマク...
-
複数のマクロボタンをまとめて...
-
Excelのマクロでボタンを押すと...
-
エクセル マクロ名にブック名...
-
Excelマクロで、稼働中のマクロ...
-
エクセルの、記録を終了したマ...
-
エクセルで、「いいね」のよう...
-
エクセルでマクロ(Excel 4.0)...
-
エクセルの表を複数枚印刷した...
-
LDPlayerのマクロの編集方法を...
-
Excelのマクロ名の並び順の法則...
-
エクセルマクロで、別のブック...
-
なぜマクロの記録がなくなって...
-
(Excel VBA)シートコピー時マ...
-
マクロをマクロを使ってコピー...
-
エクセルで明日の日付を表示す...
-
Excel:マクロを消す方法教えて...
-
Excelマクロをバックグラウンド...
おすすめ情報