みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ExcelVBAマクロでワードファイル書き込み方法

ExcelVBAマクロについて確認させてください。
下記のように読み込みたいWordファイルをフォームで指定して
Wordファイルの内容を変数aに読み込ませてます。
変数Xにある任意の文字列を代入し、変数aでその変数Xが検索された場合は
その検索された文字列全てを赤文字にして別の名前で保存という方法は可能でしょうか。
可能であればその方法をご教授下さい。
以上、よろしくお願いいたします。

----------------------------------
Sub sample()

Dim buf As String
Dim a As String

buf = Application.GetOpenFilename(FileFilter:="テキスト文書,*.txt", Title:="サンプル") 'フルパスも含めたファイル名をbufに代入

With CreateObject("Scripting.FileSystemObject").GetFile(buf).OpenAsTextStream'指定したファイルを開く
a = .ReadAll'テキスト文書の内容を文字列aに代入
.Close'指定したファイルを閉じる
End With

End Sub

投稿日時 - 2012-10-01 00:16:58

QNo.7725885

すぐに回答ほしいです

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

No.1です。

WordVBAは苦手ですが、
どのみち Dim a As String から
変数:a は文字列でしかないわけで、
フォントの色情報はないのでは?

http://okwave.jp/qa/q5321541.html
こちらのようにドキュメントに対して直接行なう
とかになるんじゃないのでしょうか?
⇒具体的なものは見つかりませんでしたが。

投稿日時 - 2012-10-02 13:29:10

お礼

早速のご回答、誠にありがとうございます。
教えていただいたサイトを参考に進めてみようと思います。

色々と調査していただき、ありがとうございました。

投稿日時 - 2012-10-05 17:46:10

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

検証していないので
的外れかもしれませんが。。。

変数:a に入るのはテキストデータではないの?
それを細工してもフォントの色は変更できないでしょう。

docファイルとしてWordで開く必要がある気がするけど。。。

投稿日時 - 2012-10-01 17:26:49

補足

申し訳ありません。
プログラムタイプミスでした。
正しくはこちらになります。

Sub sample()

Dim buf As String
Dim a As String

buf = Application.GetOpenFilename(FileFilter:="Word文書,*.doc*", Title:="チェックするファイル名の指定")'フルパスも含めたファイル名をbufに代入

With CreateObject("Word.Application")
With .Documents.Open(buf)
a = .Content.Text
.Close
End With
.Quit
End With

End Sub

投稿日時 - 2012-10-02 11:45:22

お礼

早速のご回答、誠にありがとうございます。

色々と調査していただき、ありがとうございました。

投稿日時 - 2012-10-05 17:47:49

あなたにオススメの質問