我正在尝试在 Excel 中编写一些代码,循环遍历多个文档并从 FormFields 中提取详细信息。这些文档都是从同一模板生成的,用户只能在设置的字段中输入详细信息(文档中的其他所有内容都被锁定)。
某些表单字段是可选的,因此留空。但是代码提取了“”值并将其输入到单元格中,这会在代码中引起问题。我希望它将值存储为“”。
[我使用的是Excel 2010]
我尝试过以下方法:
If ActiveDocument.FormFields(1).Range.Text = vbNull Then
If ActiveDocument.FormFields(1).Range.Text = "" Then
If ActiveDocument.FormFields(1).Range.Text = " " Then
和
If ActiveDocument.FormFields(1).TextInput.Default = True Then
而且它们似乎都不起作用。
有人知道如何在 FormField 中引用默认值吗?
Option Explicit
Sub demo()
Dim FF As FormField
For Each FF In ActiveDocument.FormFields
If Len(FF.Result) = 0 Then
Debug.Print "Default value is in " & FF.Name
Else
Debug.Print "Users input is in " & FF.Name
End If
Next
End Sub