<スポンサーリンク>
エクセルVBAで分かち書きをするために、
ワードにエクセルのセルの内容を書き込み必要がありましたので、
その方法を紹介していこうと思います!!
エクセルVBAでワードにセルの内容を書き込む方法!
「エクセルVBAでセルの内容をワードに書き込む方法」と調べても、
思った以上にいい記事がなかったので、
色々と調べて、作ってみました!
ぜひ参考にしてください。
プログラム
プログラムは非常に簡単です。
エクセルを立ち上げる方法は2通りあります。
①Set WordApp = CreateObject(“Word.Application”)
②Set WordApp = New Word.Application
しかし、②は事前にエクセルの設定を少しいじくらないといけないので、
①を使用して、誰でも使える表記で作成しています。
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | Sub KAKIKOMU() Dim wd As Object 'Wordオブジェクトを取得 Set wd = CreateObject( "Word.Application" ) 'Wordを見えるようにする wd.Visible = True 'Wordで新規文書を作成できる状態にする Set doc = wd.Documents.Add ' Word のドキュメントに、セルの内容を書きこむ moji = Cells(1,1) wd.Selection.text = moji '書いたものを消す場合 ' doc.Content.Delete ' Word は保存せず終了 'wd.Quit False End Sub |
説明
多分、説明はあまり必要ないと思いますが、
1 2 3 4 5 6 7 8 | 'Wordオブジェクトを取得 Set wd = CreateObject( "Word.Application" ) 'Wordを見えるようにする wd.Visible = True 'Wordで新規文書を作成できる状態にする Set doc = wd.Documents.Add |
ここまでで、ワードを立ち上げて、ワードで新規文書を作成しています。
そのあと、セルの値をmojiに格納し、
新規文章に書き込んでいます。
文章を書き込むときは、.Selection.textを使うようです。
ちなみに消す場合は、.Content.Deleteを使用します。
1 2 3 4 5 6 7 | ' Word のドキュメントに、セルの内容を書きこむ moji = Cells(1,1) wd.Selection.text = moji '書いたものを消す場合 ' doc.Content.Delete |
まとめ
特に難しいところはなかったのですが、
いかんせん、VBAでワードを使う必要があるときって少ないですよね。。。
ぜひ使ってみてださい!!
さらに、ワードVBAの機能を使って、文章を単語に分けることができます。
ぜひこちらの記事も読んでみてください!
コメント欄
エクセルVBAでワードに行を挿入することできますでしょうか?
コメントありがとうございます。
wd.ActiveWindow.Selection.TypeParagraph
を任意の場所に挿入することで、行の挿入ができると思いますが、
いかがでしょうか?