我正在处理一些代码,使用vb.net将Word文档中的值读取到Windows窗体中。单词文档的设计使得要读入的数据全部包含在内容控件中。以下是我的代码示例:
Private Sub ImportWordButton_Click(sender As Object, e As EventArgs) Handles ImportWordButton.Click
Dim oWord As Microsoft.Office.Interop.Word.Application
Dim oDoc As Microsoft.Office.Interop.Word.Document
Dim oCC As Microsoft.Office.Interop.Word.ContentControl
oWord = CreateObject("Word.Application")
oDoc = oWord.Documents.Open("C:\Temp\PIFFormTest2.docx", [ReadOnly]:=False)
For Each oCC In oDoc.ContentControls
Select Case oCC.Tag
Case "PIFNo"
NumberBox.Text = oCC.Range.Text
Case "PIFTitle"
TitleBox.Text = oCC.Range.Text
Case "Initiator"
InitiatorBox.Text = oCC.Range.Text
Case "PTHealthSafety"
HealthSafeCheckBox.Checked = oCC.Checked
Case "PTRegEnviro"
RegEnvCheckBox.Checked = oCC.Checked
......它还在继续。 Word文件中的某些内容是使用ActiveX单选按钮而不是内容控件捕获的。我似乎无法找到引用单选按钮的正确对象。我花了很多时间在网上搜索。任何帮助表示赞赏。
答案 0 :(得分:0)
我也正在研究这个问题,这是一场噩梦。
For Each f As Field In oDoc.Fields 'notice fields not content controls
Console.WriteLine(f.OLEFormat.Object.Name) 'notice properties, not methods...
Next