错误6124与Word自动化

问题描述:

为什么在某些计算机上运行此代码时得到"Error 6124: You are not allowed to edit this section because it is protected."?我没有在我的开发机器上得到它。书签与表单域相关联。错误6124与Word自动化

Set objWordApp = CreateObject("Word.Application") 
Set oDoc = objWordApp.Documents.Open(strDocPath) 
oDoc.bookmarks("CustomerName").Select 
objWordApp.selection = "Mr Smith" 
oDoc.bookmarks("CustomerNumber").Select 
objWordApp.selection = "0001" 
oDoc.save 
oDoc.Bookmarks("Comments").Select 
oDoc.ActiveWindow.View = 1 
objWordApp.WindowState = 0 
objWordApp.Visible = True 
oDoc.Activate 
objWordApp.Activate 
+0

准确地说,你应用了什么类型的保护?是通常的“只允许这种类型的编辑 - 填写表格”或其他东西? – 2013-11-03 22:35:59

+0

“填写表格” – CJ7

在您需要参考.FormFields而不是.Bookmarks保护/受限制的文件。

相反的:

oDoc.Bookmarks("CustomerName").Select 
objWordApp.selection = "Mr Smith" 

用途:

oDoc.FormFields("CustomerName").Result = "Mr Smith" 
+0

但是,您为什么认为这会在某些机器上导致问题,而不是其他问题? – 2013-11-03 22:37:09

+0

我不知道。猜测这可能与用户权限有关。 – CJ7

打开有问题的文件。进入文件 - >选项 - >常规。取消选中复选框“打开电子邮件附件和其他不可编辑的文件中读取视图”

http://answers.microsoft.com/en-us/office/forum/office_2013_release-word/run-time-error-4605-in-word-2013-no-information/1ca02c04-5cea-484e-bd23-f4d18183c1b2?auth=1

我有同样的错误。花了一段时间才弄清楚,但文件权限(在Windows中)设置为只读。

在Windows资源管理器中,右键单击该文件并选择属性。 然后取消选中常规选项卡上的只读复选框。