• ベストアンサー

ワードのVBAについて

文章中にある「#」という文字を「^」に変更するVBAを書きたいのですが四苦八苦しております。 置換では変更後の文字を「^」とするのがWordの特性なのか、できないため、文章中「#」が何文字あるのかをカウントし、その後、そのカウントした回数分だけloop分にて「#」の検索と「^」への上書きを繰り返すというVBAを作ろうかと思っております。 教えていただきたいのは、今回の質問で言えば「#」なのですが、特定の文字が何個あるのかを数える為の記述方法です。 Word上で「#」を適当な文字に置換して、そのときに表示されるメッセージ上の数字をVBAのloopの回数としてその都度書き込めばいいと言ってしまえばそれまでなのですが、できればVBAの作業のみで完結させたいと思っております。 お分かりの方いらしたらよろしくお願いいたします。

  • mxb
  • お礼率61% (36/59)

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

  • ベストアンサー
回答No.1

VBAじゃないですけど、 普通の置換で「置換後の文字列」を 「^^」にするとできます。(うちのword2000の場合) Version 書いてないんで、他でもできるか わかりませんが。

mxb
質問者

お礼

ご回答ありがとうございます。 今日、初めて知りました。また何かありましたらよろしくお願いいたします。

その他の回答 (1)

  • akamanbo
  • ベストアンサー率17% (462/2680)
回答No.2

置換後文字列が「^」一つだとできませんが、 「^^」とすれば、結果として「^」一つに置換 できると思いますが・・・ 「^」はWordでのエスケープ文字です。 正規表現で使われる「\」と同じように 扱えばいいと思います。

mxb
質問者

お礼

ご回答ありがとうございます。 今日、初めて知りました。また何かありましたらよろしくお願いいたします。

関連するQ&A

  • EXCEL VBAにて、WORDへ置換

    EXCEL VBAにて、WORD文書への文字列置換を行っております。 文字列の置換自体はできています。 が、 置換文字列に「改行」(vbCRやvbLF)をいれて置換すると、 word側での表示が□になってしまいます。 vbCrだけでもvbLFだけでも、vbCRLFでも□と表示されてしまいました。 chr(13) & chr(10)でも□になりました。 EXCEL VBA にて WORDへ文字列置換する場合に送る、改行コード (たぶん「^p」と予測をつけているのですが)を chr関数等での 表示方法を教えてください。 EXCEL2003 WORD2003 よろしくお願いします。

  • WORD・VBA。文字を置換するプログラム

    WORD・VBA。文字を置換するプログラムを教えてください。 次のような働きをもつWORD・VBAのプログラムをご教示ください。 緊急で急いでおります。 文章中の任意の場所を反転させます。 この状態でプログラムを実行したときに、 反転文章内の全ての中カッコ{ }内について その中の文字列を同じバイト数の空白で置換します。 ただし、この置換は反転して目に見えている実際の文字列(原文)は変えず、 仮想空間(?)の中だけで行います。 この状態で、Ctrl+V によって手動でペーストすると、 原文の{ }内が空白で置き換わった文章が現れます。 つまり、これは原文中の{ }内が空白となる穴埋め問題を 作成するプログラムということになります。

  • ワードに貼り付けられた画像の中の文字数を数えたい

    ワード文書の文字数を数えているのですが、その文書の中に、画像が貼り付けられたものがあり、 その部分は手で数えなければならず、四苦八苦しています。(全体が150枚、画像だけで、半分ぐらいあるので)簡単に数えられる方法はないでしょうか。ワード2007だとテキストボックスはカウントしてくれるのですが、画像内の文字まではカウントしてくれません。etypistを使って画像を抽出しようかと思いましたが、PDFその他の画像ファイルしかよみこんでくれないので、これも使えません。 何かよい方法を教えてください。

  • ワードのこと…教えてください!!

    昨日、ワード(Office Word 2003)で文章を作成して、PCとフロッピーに保存しておきました。 そして、今日、その文章に更に加筆しました。 それで、上書き保存したら、昨日よりもデータの容量が10KB以上も減ったんです。 文字数はむしろ昨日よりも増えていて、フォントサイズや他の設定は一切変えていません。 容量とはどのように算出されるのでしょうか? また、もう一つ、疑問なのですが、 その文章の文字数を調べるために、「ツール」→「文字カウント」という操作をしました。 その操作以外は一切していなくても、 「変更されました。保存しますか?」という文が出てきます。 これは普通のことなのでしょうか? 文章は一切触っていないので、「変更」はしていないのですが…。 初歩的な質問ばかりになってしまいましたが、よろしくお願いします。

  • Word VBA 選択範囲のみ

    教えてください Windows10 Word2016です WordのVBAで例えば、 --------------------------- 選択範囲のみ 検索置換 ----------- 選択範囲のみ 空白行削除 ----------- 選択範囲のみ 段組を変更 ---などなど-------------------- この「選択範囲のみ」の記述はどう書けば良いのでしょうか 「マクロの記録」でいろんな事書いてますが、「選択範囲のみ」の書き方がわかりません 検索置換、空白行削除、段組を変更  それぞれに書き方が違うのでしょうか お願いします

  • word2003のvba

    wordの画面でctr+F11を押すと「検索と置換」の画面が出ると思います この画面の左下に「見つかった全ての項目を強調表示する」というチェックボックスがあるのですが、vbaでこのチェックボックスにチェックが入った状態の検索をするにはどのように書けばいいのでしょうか? 最終的にはエクセルのvbaを使い、特定のフォルダ内にあるエクセルファイル内の文字を検索し、該当ファイルを抽出してパスをセルに格納 そのパスのレコードをクリックしたら検索ワードが全て強調表示された状態でワードファイルが開かれるという事がしたいと思っています 解る方がいらっしゃいましたら御教授頂けませんでしょうか 宜しくお願い致します

  • Word2003のVBAで特定の文字列を削除したい

    Word2003のVBA超初級者です。 赤字で一重取消線の文字を検索し、その文字列を置換で削除したいのですが、本やネットで検索してもよくわかりません。 どうぞよろしくお願いいたします。

  • wordが途中で応答なしになりました。保存できないでしょうか?

    こんばんは。パソコン初心者です。 windowsXPで、NECのLavieLを使っています。 wordで四苦八苦しながら表のようになったなかに文章を打っていたら、応答なしになってしまいました。 保存していないのですが、この場合、1から打ち直すしかないでしょうか? 打った分を保存する方法などありましたら教えてください。 よろしくお願い致します。

  • ワード ツールバーが全部消えた!

    ワードで全てのツールバーが消えてしまって、文字を打ち込む画面のみが表示されます。 プリントアウトひとつにも四苦八苦で、どなたか「普通」の画面(ツールバーの表示のある)にもどす方法を教えてください。 お願いします。

  • 文字数制限が出来るワード系フリーウェアを探しています

    ワードやメモ帳のような機能のあるフリーウェアで、1000文字とか文字数制限を設けて書けるものは無いでしょうか。 携帯小説に投稿してるのですが、最初にワード系ソフトで文章を書いてからコピーしているので、いちいち文字カウントしながら文章を整形するのが手間です。最初から書ける範囲が明示されているものはないでしょうか。もしくは文字カウントボタンを押さなくても、現在何文字目か常に表示されているようなものでもいいです。 できれば置換で改行を<br>\nに変換できる機能もあると嬉しいのですが。(この機能だけがあるフリーウェアはいりません) いいフリーウェアがあれば教えてください。

専門家に質問してみよう