<スポンサーリンク>
エクセルVBAで分かち書きをするために、
ワードにエクセルのセルの内容を書き込み必要がありましたので、
その方法を紹介していこうと思います!!
エクセルVBAでワードにセルの内容を書き込む方法!
「エクセルVBAでセルの内容をワードに書き込む方法」と調べても、
思った以上にいい記事がなかったので、
色々と調べて、作ってみました!
ぜひ参考にしてください。
プログラム
プログラムは非常に簡単です。
エクセルを立ち上げる方法は2通りあります。
①Set WordApp = CreateObject(“Word.Application”)
②Set WordApp = New Word.Application
しかし、②は事前にエクセルの設定を少しいじくらないといけないので、
①を使用して、誰でも使える表記で作成しています。
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
説明
多分、説明はあまり必要ないと思いますが、
'Wordオブジェクトを取得
Set wd = CreateObject("Word.Application")
'Wordを見えるようにする
wd.Visible = True
'Wordで新規文書を作成できる状態にする
Set doc = wd.Documents.Add
ここまでで、ワードを立ち上げて、ワードで新規文書を作成しています。
そのあと、セルの値をmojiに格納し、
新規文章に書き込んでいます。
文章を書き込むときは、.Selection.textを使うようです。
ちなみに消す場合は、.Content.Deleteを使用します。
' Word のドキュメントに、セルの内容を書きこむ
moji = Cells(1,1)
wd.Selection.text = moji
'書いたものを消す場合
' doc.Content.Delete
まとめ
特に難しいところはなかったのですが、
いかんせん、VBAでワードを使う必要があるときって少ないですよね。。。
ぜひ使ってみてださい!!
さらに、ワードVBAの機能を使って、文章を単語に分けることができます。
ぜひこちらの記事も読んでみてください!
コメント欄
エクセルVBAでワードに行を挿入することできますでしょうか?
コメントありがとうございます。
wd.ActiveWindow.Selection.TypeParagraph
を任意の場所に挿入することで、行の挿入ができると思いますが、
いかがでしょうか?