插入文档 属性 对象
Insert Document Property Object
在我的 Word (Office 365) 文档中,我可以通过单击插入/快速部件/文档 属性 / 公司来插入公司名称的快速部件。
我想要一个宏来执行此操作,这样我就可以在“快速访问”工具栏上弹出一个按钮,使其单击一次而不是四次。
我录制过程的时候,宏没有注册插入。我发现下面的 VBA 代码插入了字段的当前文本,而不是内容控件本身:
ActiveDocument.Content.InsertAfter
ActiveDocument.BuiltInDocumentProperties(wdPropertyCompany)
我认为必须有一行 VBA 将公司快速零件字段插入到我的文档中,就好像我已经完成了那四次点击一样。
诀窍是将内容控件映射到公司
Sub insertCompanyCC()
On Error GoTo err_insert
Dim cc As ContentControl
Set cc = ActiveDocument.ContentControls.Add(wdContentControlText, Selection)
With cc
.Title = "Company"
.XMLMapping.SetMapping "/ns0:Properties[1]/ns0:Company[1]"
End With
exit_insert:
Exit Sub
err_insert:
Select Case Err
Case 4605
MsgBox "Please move your cursor outside of the content control.", vbExclamation
Case Else
Err.Raise Err.Number, Err.Source
End Select
Resume exit_insert
End Sub
例如/ns1:coreProperties[1]/ns0:creator[1]
将插入作者。
在我的 Word (Office 365) 文档中,我可以通过单击插入/快速部件/文档 属性 / 公司来插入公司名称的快速部件。
我想要一个宏来执行此操作,这样我就可以在“快速访问”工具栏上弹出一个按钮,使其单击一次而不是四次。
我录制过程的时候,宏没有注册插入。我发现下面的 VBA 代码插入了字段的当前文本,而不是内容控件本身:
ActiveDocument.Content.InsertAfter
ActiveDocument.BuiltInDocumentProperties(wdPropertyCompany)
我认为必须有一行 VBA 将公司快速零件字段插入到我的文档中,就好像我已经完成了那四次点击一样。
诀窍是将内容控件映射到公司
Sub insertCompanyCC()
On Error GoTo err_insert
Dim cc As ContentControl
Set cc = ActiveDocument.ContentControls.Add(wdContentControlText, Selection)
With cc
.Title = "Company"
.XMLMapping.SetMapping "/ns0:Properties[1]/ns0:Company[1]"
End With
exit_insert:
Exit Sub
err_insert:
Select Case Err
Case 4605
MsgBox "Please move your cursor outside of the content control.", vbExclamation
Case Else
Err.Raise Err.Number, Err.Source
End Select
Resume exit_insert
End Sub
例如/ns1:coreProperties[1]/ns0:creator[1]
将插入作者。