重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

コピーした文の半角スペースを、_(アンダーバー)なり、他の半角文字に置換するか、削除してペーストしてくれるツールをご存知ないでしょうか。

Word2003を使うときに、ペーストする文字の半角スペースが邪魔になる局面があるので、これを何とかしたいと思い、質問しています。

Wordマクロで実現できればいいですが、私のマクロ技術は、記録マクロを作っていじったり、他の人のマクロをコピペして使わせてもらっている程度のレベルです。
Wordで、ペーストするときに、半角スペースを置換するマクロは、ありそうなのですが、調べたけれど、見つかりません。

そこで、別の方法ですが、Cliborのようなコピペツールを使おうと思いました。
でも、クリップボードの情報で、半角スペースを削除してくれるツールが調べても見つからない
です。もし他のツールでこうした機能があって、ショートカットに割り付けすることができれば、
非常に助かりますので、よろしくおねがいします。

Wordで、ペーストしてから、置換をする方法を使うのは、その都度、操作するのに手間がかかる
ので、それよりも楽な方法があると思い、質問しています。

※具体的なやりたいこと。別に、本筋の質問とは関係ないので、読まなくてもいいです。

Word2003で文書内にリンクを張るとき、事前にリンク先に名前をつけて設定する必要があります。
リンク元(青色で下線になっている箇所)をマウスオーバーすれば、リンク先の名前が出てきます。
このリンク先の名前が、リンク先と同じになるように、設定しておけば、どういう場所にリンクを張った
のか、分かりやすくなるので、便利です。ですが、リンク先の名前は、半角スペースがあると、受け付け
ないので、この半角スペースを何とかしたいと思い、質問しました。

A 回答 (5件)

「clibor」でもできますが、かなり面倒ですね。


http://www.amunsnet.com/soft/clibor_macro.html
お試し程度の機能ですし・・・

私は「ToMoClip」を使用していますが、こちらの方が正規表現を利用して、簡単にできます。
http://www.vector.co.jp/magazine/softnews/020710 …

新規作成から
名前:半角スペース削除
「削除不可」と「拡張文字有効」にチェック

内容欄に

$CB editing="s/\s//;"$

と入力して、OKをクリック。

文字列をコピーしたあと、貼り付ける箇所にカーソルを合わせて、
「半角スペース削除」をクリック。

「$CB」を「$CP」に変更すると、選択文字列中の半角スペースを削除します。
    • good
    • 0
この回答へのお礼

どうも、ぴったりの答えを教えてくださって、ありがとうございました!
No.4と併読してやれば、実現できそうですね。

お礼日時:2012/10/13 12:31

#1です。


「EXCELは起動しっぱなし、マクロ実行のボタンだけ見える状態にしておく」ということでした。
    • good
    • 0

#3です。



ちなみに、半角スペースをアンダーバーに置換する場合は下記のように変更してください。

$CB editing="s/\s/_/;"$
    • good
    • 0

質問内容を理解していないのかもしれませんが。



Wordだけで余計なスペースがつくのなら、[オプション]で
解除できるかもしれません。
http://oshiete.goo.ne.jp/qa/5159968.html

[ツール]→[オプション]→[編集と日本語入力]タブにある
[貼り付け時に自動調整する]が関連しているかと。

クリップボード拡張ソフトを使っても、貼り付けをすれば
おそらく半角スペースが付くと思います。
メモ帳などに貼り付けしたときには、余計なものがついて
いないはずですから、Wordに貼り付けたときの問題です。
    • good
    • 0
この回答へのお礼

解答ありがとうございます。
This is a pen.
をコピーして、ペーストした際に、
This_is_a_pen.
と、ペーストしてくるような方法を探しているんですね。
Word上で実現させたいのですが、実現させるためには、
Wordのツールを使っても使わなくても大丈夫なのです。

説明が下手で申し訳ありません。

お礼日時:2012/10/10 09:11

WORDをお持ちなのでEXCELもお持ちであるとして。



EXCELのVBAでクリップボード操作するサンプルは見つけられるはず。
(キーワード[excel vba クリップボード 操作]あたり)
で、以下の作りにする。
1)クリップボードからテキスト形式の場合のみテキストを取得。
2)TRIMでもなんでも、半角置換するコードを書く。
3)半角変換結果をクリップボードに格納する。
4)1)~3)までの内容をボタンに割付


使い方
5)上記のブックを開いて、ボタンが見えるだけ大きさにして常駐させておく。
6)WORDの必要箇所をコピーする。
7)EXCELブックのボタンクリック(上記1~3を実行)
8)WORDで目的箇所にペーストする。
    • good
    • 0
この回答へのお礼

どうもありがとうございます。
半角スペースを編集する作業は、使うなら、一日に何百回と使いたい機能なので、エクセルをその都度、使わないといけないとなると、Wordマクロで編集して操作するよりも面倒な感じがするので、ちょっと難しいです。
すいません。

お礼日時:2012/10/10 09:15

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!