gpt4 book ai didi

vb.net - 如何使用 Range 对象读取 VB.net 中 word (*.doc) 文件中复选框的值?

转载 作者:行者123 更新时间:2023-12-03 17:21:56 26 4
gpt4 key购买 nike

如何使用范围对象读取 VB.net 中 word (*.doc) 文件中复选框的值?

这是我到目前为止:

Dim app As New Word.Application
Dim doc As Document
doc = app.Documents.Open("C:\myDoc.doc")
dim chkBox as Bookmark
chkBox = doc.Bookmarks("MyCheckbox")
Dim rng as Range
rng = chkBox.Range

其中“MyCheckbox”是word文档中复选框的书签。

最佳答案

您没有使用复选框本身的名称读取复选框的值的任何特殊原因?

如果您的书签定义的范围包含一个复选框,则根据复选框的插入方式,它将在 InlineShapes 中找到。集合(如果复选框插入文本内)或 Shapes集合(如果作为 float 对象插入。)

然后,您需要遍历 Shapes 或 InlineShapes 的集合以查找有问题的复选框。

遍历 InlineShapes 集合中的控件

Dim ctl As InlineShape
For Each ctl In rng.InlineShapes
If ctl.Type = wdInlineShapeOLEControlObject Then
If ctl.OLEFormat.ClassType Like "Forms.CheckBox*" Then
'current version of ctl is a checkbox, do what you will with it.

End If
End If
Next ctl
...

这应该会让你更接近,但如果复选框的名称是可预测的,最好直接按名称寻址。

关于vb.net - 如何使用 Range 对象读取 VB.net 中 word (*.doc) 文件中复选框的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/281990/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com