Word VBA質問箱 IV

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

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


219 / 308 ツリー ←次へ | 前へ→

【289】文章中の数字だけ色を変えたい tootsie 05/4/19(火) 13:11 質問[未読]
【290】Re:文章中の数字だけ色を変えたい H. C. Shinopy 05/4/19(火) 23:18 回答[未読]
【291】Re:文章中の数字だけ色を変えたい tootsie 05/4/20(水) 11:55 お礼[未読]

【289】文章中の数字だけ色を変えたい
質問  tootsie  - 05/4/19(火) 13:11 -

引用なし
パスワード
   はじめてお便りします。

最近マクロの利用価値にめざめたばかりです。

単刀直入ですが、一般の文章の中の数字(漢数字と洋数字の両方)をチェックするために、数字だけをたとえば赤にするとか、網がけするなどして目立たせたいのですが、どうしたらよいでしょう。

漢数字は一から十、百、千、万、億、兆の位まで。それによって「百瀬」[八潮」などという数字以外の言葉も拾ってしまうかもしれませんが、それはチェックするためなのでかまいません。

面倒な質問で恐縮ですが、よろしくお願いします。

【290】Re:文章中の数字だけ色を変えたい
回答  H. C. Shinopy  - 05/4/19(火) 23:18 -

引用なし
パスワード
   御質問の件は、ワイルドカードを使ってできます。
ワイルドカードの指定した内容については、
もっと改善の余地があると思いますが、
私がヘルプや書籍で調べた限りでは、
「正規表現」のような精緻な検索はできないようです。
まずは、下記の通りの回答ということでお許し下さい。

Sub myNumber()
 Rem *----*----*  *----*----*  *----*----*  *----*----*
 Rem 漢数字/洋数字検索処理
 Rem *----*----*  *----*----*  *----*----*  *----*----*
 '
 Dim myStartMarker As Word.Range
 '
 Rem カーソルが文章の途中あると、不都合が起こるので、
 Rem 文章の先頭に移動する。
 Selection.Sentences(1).Select
 Selection.Collapse wdCollapseStart
 '
 Rem 検索開始点の取得。
 Set myStartMarker = Selection.Range
 '
 Rem 検索開始。(ワイルドカードを使用)
 With Selection.Find
  .ClearFormatting
  .Text = "[0-90-9〇一二三四五六七八九十百千万億兆]{1,}"
  .Replacement.Text = ""
  .Forward = True
  .Wrap = wdFindStop
  .Format = False
  .MatchCase = False
  .MatchWholeWord = False
  .MatchByte = False
  .MatchAllWordForms = False
  .MatchSoundsLike = False
  .MatchFuzzy = False
  .MatchWildcards = True
 End With
 '
 Rem 検索実行。(検索開始点から下を処理する)
 Do While Selection.Find.Execute
  With Selection
   .Range.HighlightColorIndex = wdYellow ' 蛍光ペン:黄色
   .Font.Color = wdColorRed ' フォントの色:赤色
   .Collapse wdCollapseEnd
  End With
 Loop
 '
 Rem 検索開始点に戻る。
 myStartMarker.Select
 MsgBox "検索終了!"
End Sub ' myNumber *----*----*  *----*----*  *----*----*  *----*----*

【291】Re:文章中の数字だけ色を変えたい
お礼  tootsie  - 05/4/20(水) 11:55 -

引用なし
パスワード
   こんなに早くお返事がいただけるなんて、感謝感激しています。
さっそく貼り付けて使ってみたら、見事に機能しました。

実は、文章の漢字を洋数字に変換するマクロを作ろうとしています。
ネット上で有志の方が無料提供してくださっているものを使ってみたのですが、まったく意図しないものが変換されるなどの不備が多くて困っていたのでした。自分なりに手直しはしているのですが、そのマクロをもっと使いやすいものにするためには、もう少しVBAの勉強が必要なようです。理数系が苦手な自分にとっては大変ですが、頑張ってみますので、分からないことがあれば、またよろしくお願いします。

ありがとうございました。

219 / 308 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
207137
(SS)C-BOARD v3.8 is Free