Vb.net 如何在所需位置的现有.docx文件中添加文本

Vb.net 如何在所需位置的现有.docx文件中添加文本,vb.net,ms-word,Vb.net,Ms Word,我想打开一个现有的.docx文件,并在第二段中插入一些文本 Private Sub insertText() Dim WordApp As New Microsoft.Office.Interop.Word.Application Dim aDoc As Microsoft.Office.Interop.Word.Document = WordApp.Documents.Open("C:\File1.docx") Dim RNG As Microsoft.Office.Interop.Word.

我想打开一个现有的.docx文件,并在第二段中插入一些文本

Private Sub insertText()
Dim WordApp As New Microsoft.Office.Interop.Word.Application
Dim aDoc As Microsoft.Office.Interop.Word.Document = WordApp.Documents.Open("C:\File1.docx")
Dim RNG As Microsoft.Office.Interop.Word.Range()

end sub
现在我应该写些什么在第二段中插入一些文本??
任何帮助都将不胜感激。提前感谢。

您可以使用
Application.Selection.TypeText()
来实现:

 Private Sub insertText()
    Dim WordApp As New Microsoft.Office.Interop.Word.Application
    WordApp.Visible = True
    Dim aDoc As Microsoft.Office.Interop.Word.Document = WordApp.Documents.Open("C:\File1.docx")

    Dim paragraphs As Word.Paragraphs = aDoc.Paragraphs

    If (paragraphs.Count > 1) Then
        paragraphs(2).Range.Select()
        WordApp.Selection.TypeText("test")
    End If

    aDoc.Save()
    aDoc.Close()

    WordApp.Quit()
End Sub
您可能应该先安全地关闭文档,然后再关闭word,这样在程序完成后就不会挂起winword.exe(我为您添加了这个快速而肮脏的选项,但它不是100%万无一失的)


请原谅我可怜、懒惰的vb.net风格。如果您喜欢c sharp—请注意,由于v4.0版,c sharp比Office Interop的性能要好得多,我建议您使用。

是的。。我得到了答案

Private Sub insertText()
    Dim WordApp As New Microsoft.Office.Interop.Word.Application
    Dim aDoc As Microsoft.Office.Interop.Word.Document = WordApp.Documents.Open("C:\File1.docx")
    Dim RNG As Microsoft.Office.Interop.Word.Range()
    Dim PARA As Microsoft.Office.Interop.Word.Paragraph = aDoc.Paragraphs.Add()

    If aDoc.Paragraphs.Count > 1 Then
        aDoc.Paragraphs(2).Range.InsertParagraphBefore()
        aDoc.Paragraphs(2).Range.Text = "Hello World"
    end if
end sub
这段代码首先在第二段上面添加一个新段,然后在新创建的第二段中插入Hello World。
干杯……杰克。非常感谢你的关注。上帝保佑You@Jack,段落中出现错误。计数。Count不是Microsoft.Office.Interop.Word.Parague的成员。我在这里该怎么办???@Jack,段落中有错误。计数。Count不是Microsoft.Office.Interop.Word.Parague的成员。我在这里该怎么办??如果第二段写了什么呢??代码应在现有第二段上方插入新段,然后文本应插入新创建的段中。。