Word2007で、VBAから貼りつけたテキストを選択状態にする方法

このQ&Aのポイント
  • Word2007で、VBAから貼りつけたテキストを選択状態にする方法についてご質問です。
  • 貼り付けたテキストが選択されていない状態であるため、書式設定ができません。
  • 貼りつけた文字列を選択状態にする方法をご存じないでしょうか?
回答を見る
  • ベストアンサー

Word2007で、VBAから貼りつけたテキストを選択状態にする方法

Word2007で、VBAから貼りつけたテキストを選択状態にする方法 Word2007で下記のような自動処理のマクロを作りたいのですが、 (2)で貼り付けたら、カーソルが貼りつけ文字の後ろにあり、貼りつけられた文字列は選択されていない状態です。 (3)の書式設定をするには、(2)で貼りつけた文字列を選択状態にしなければならないと思うのですが、良い方法をご存じないでしょうか? フィールドとして入力されている部分(選択範囲)を (1)切り取り:Selection.Cut (2)テキストとして貼り付け:Selection.PasteSpecial DataType:=wdPasteText (3)その部分に、アンダーラインやBoldなどの適当な書式を設定 よろしくお願い致します。

  • gpcxs
  • お礼率88% (16/18)

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

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

何故、カット&(テキストとしての)ペーストをする必要があるの? (1)と(2)で実行していることは[書式のクリア]または[文字書式の解除] であり、カット&ペーストする必要はないと思います。  書式のクリア Selection.ClearFormatting  文字書式の解除 Selection.Font.Reset このどちらかを実行すれば、選択範囲を解除しないで済むはずです。 (3)もマクロにしたいなら With Selection  .Font.Reset  .Font.UnderlineColor = wdColorAutomatic  .Font.Underline = wdUnderlineSingle  .Font.Bold = wdToggle  .Font.Color = wdColorRed End With のような設定をするだけです。 フィールドコードとして入力されている部分を、テキストとして解除が された状態にしたいなら、[フィールドを実行結果に置き換え]で解除を します。  フィールドを実行結果に置き換え Selection.Fields.Unlink

gpcxs
質問者

お礼

Selection.Fields.Unlink ですか!! そんな便利なマクロがあったなんて知りませんでした。 私がしたいのは、まさにこの処理です。 これなら、フィールドコードを解除した後も選択状態は変わらないようなので、 その後の書式設定も問題ないですね。 勉強になりました。 ありがとうございました。

関連するQ&A

  • Wordでテキストボックスの選択ができません!

    Word2007を使用しています。 ちなみにUSBメモリーに保存して2003で使用しても同じでした。 「挿入」→「テキストボックス」でテキストボックスを挿入しました。 特殊な記号を1文字、図として使用したかったのです。 一文字分だったのでテキストボックスの面積を極力小さくし、「書式設定」で線の色をなくし、「文字列の折り返し」で、背面へ移動しました。 そしたらそのテキストボックスにカーソルをもっていっても、選択できなくなってしまったんです。 移動させることは勿論、削除する事も出来ない‥。 うまく選択できる方法ってありませんか??

  • Word 2007のテキストボックスについて

    Microsoft Word 2007を利用しています。テキストボックスの書式設定にて、 テキストボックスと文字列の間隔の設定を0mmにしても右側に大きく余白が発生します。 文字の右端ギリギリに対してテキストボックスを寄せておきたいのですが、 画像以上に左側に対してテキストボックスを小さくすると文字列が折り返しされてしまいます。 何か他に設定を変えれば解決出来ますでしょうか? それとも仕様として諦めなければならないのでしょうか? 回答をよろしくおねがいします。

  • テキストボックス内のワードアートの書式設定について

    WORD2003を使用しています。 まず、テキストボックスを作成し、その中にワードアートで文字を入れました。 そのワードアートを回転させたいのですが、ワードアートの書式設定を 見ても、文字列の折り返しが灰色になっていて選択できません。 テキストボックスの中のワードアートを回転させるにはどうしたらいいのでしょうか。

  • Wordをテキスト形式で保存したあと

    現在、マイクロソフトのWordにて小説を書いているのですが、投稿する場合はテキスト形式にてメールに添付という形が多いので、Wordの「書式なし」を選択してテキスト形式にしています。しかし、これだと開いたときに二十文字で折り返してくれるのですが、いまいち見ずらくて困っています。 これを四十文字くらいで折り返すような設定にはできないでしょうか? 

  • Excel VBA のセル内の選択テキストの読み書きは?

    Excel VBAで、選択されたセルではなくセル内の選択された部分のテキストの読み書きはできるのでしょうか? つまり、選択されたセルのテキストは Selection.Value を使って OldText = Selection.Value Selection.Value = "NewText" と読み書きができますが、セル内で選択されたテキストについてのインターフェイスはあるんでしょうか?

  • Dreamweaver 8 です。 ワードの文章をコピーペーストする時

    Dreamweaver 8 です。 ワードの文章をコピーペーストする時に、たまにワードの文字列がペースト出来ません。 恐らく書式情報で、ペースト出来ないものと思われます。 Dreamweaver の設定でテキストのみを設定すると、ペーストされます。 テキストのみですと、折り返しが無くなってしまうので、困るのですが、ワードの書式の何を外せば、このようなことが起きないのか教えてください。 ワードのコピーの場合、この判らない設定の部分だけが、消えてしまいます。 ワードで、他の部分の書式を消える部分に設定し直してから、コピーペーストすると、きちんとペーストされます。

  • Word2002のコピー時

    こんにちは。Microsoft Word 2002(SP3)について質問です。 たとえばWebブラウザや、ほかのワードドキュメントなどから文章をコピーしたとき、毎回書式も一緒に貼り付けられてしまいます。 たとえばBoldの文字列をコピーして張り付けると、Boldのまま張り付いてしまいます。これを一括Offにして、毎回内容(値)のみを貼り付けることはできないでしょうか?そのようなオプションや設定はどこかにありませんでしょうか? つまり貼り付けた先の書式に毎回従うようにしたいのです。 長らく不便に感じていました。よろしくお願いします。

  • Outlook Expressでテキスト形式にするには

    タイトルの通りオプションから設定したのですが、新規作成でウィンドウを開き、ワードで作成したアンダーラインやイタリックを使用したテキストをコピペしたところ、テキスト形式のはずがアンダーラインなどもそのままコピーされました。書式メニューでリッチテキストをいったん選択し、再度テキスト形式を選択しなおすとすべてテキスト形式になりました。テキスト形式以外のコピペを受け付けないようにする方法はないでしょうか?

  • word vbaで特定範囲の色変え

    ただいま、ちょっとした教材をwordで作っており、その中で 「『Ans.』という文字列から空行が出るまでの部分を赤文字にする」ことで、赤シートで隠せるようにしたいと思っています。 Ansの文字色を変えるだけなら With Selection.Find .Text = "Ans." Do While .Execute Selection.Font.TextColor.RGB = RGB(255, 0, 0) Loop End With で可能なのですが、その先の文字列も変えるのができないです。 少しVBAを勉強している身でもあるので、ご教授いただきたいです。

  • Word(2000)の図形の選択、テキストボックスの書式

    ワードに図形やテキストボックスをたくさん並べているのですが、これを一気に選択することって出来ませんか?(編集→全て選択見たいな感じで) 出来なけば、なにか良い方法はないでしょうか? それと、テキストボックスの書式もひとつずつしか出来ないですよね?これも複数のテキストボックスを選択した状態で一気にフォントを変えたりしたいのですが何か良い方法ないでしょうか? よろしくお願いします。

専門家に質問してみよう