トップ回答者
VisualBasic2008でWord2003を制御する方法について

質問
-
現在、VisualBasic2008を勉強中の初心者です。Word2003ドキュメント内の表を解除するプログラムを作成しています。
以下コードの「oDoc.Selection.Rows.ConvertToText(Separator:=???)」箇所の「???」で段落記号で区切って解除(wdSeparateByParagraphs)を指定したいのですが、VisualBasic2008上でどのように指定すればよいのかわかりません。
ご存知の方、ご指導いただけないでしょうか。なにぶん初心者なものでよろしくお願いします。
また、メモリ開放についてMarshal.ReleaseComObjectを使ってみましたが、以下のような使い方のよろしいでしょうか。
何卒よろしくお願いします。
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim wdDoc As Microsoft.Office.Interop.Word.Document
Dim oDoc As Microsoft.Office.Interop.Word.Application
Dim tbl As Microsoft.Office.Interop.Word.Table
'Word起動
oDoc = New Microsoft.Office.Interop.Word.Application()
'画面表示
oDoc.Visible = True
'ファイルオープン
wdDoc = oDoc.Documents.Open("c:\tmp\0270.doc")
For Each tbl In wdDoc.Tables
tbl.Select()
'oDoc.Selection.Rows.ConvertToText(Separator:=???)
Next
wdDoc.Close()
oDoc.Quit()
System.Runtime.InteropServices.Marshal.ReleaseComObject(wdDoc)
System.Runtime.InteropServices.Marshal.ReleaseComObject(oDoc)
wdDoc = Nothing
oDoc = Nothing
End Sub
End Class
回答
-
oDoc.Selection.Rows.ConvertToText(Separator:=Microsoft.Office.Interop.Word.WdTableFieldSeparator.wdSeparateByParagraphs)
ConvertToText の説明に WdTableFieldSeparator列挙型 を使うと書かれていますね。
わからない引数があったらMSDNで命令を検索すると見つけやすいでしょう。
ReleaseComObjectの使い方は合ってます。- 回答としてマーク 菊地俊介 2010年2月17日 6:51
すべての返信
-
oDoc.Selection.Rows.ConvertToText(Separator:=Microsoft.Office.Interop.Word.WdTableFieldSeparator.wdSeparateByParagraphs)
ConvertToText の説明に WdTableFieldSeparator列挙型 を使うと書かれていますね。
わからない引数があったらMSDNで命令を検索すると見つけやすいでしょう。
ReleaseComObjectの使い方は合ってます。- 回答としてマーク 菊地俊介 2010年2月17日 6:51