2009-01-05 8 views

Répondre

1

Je pense que vous ne pouvez le faire en sélectionnant les paragraphes qui vont pas être protégés. Vous trouverez ci-dessous un exemple de macro qui sélectionne un texte, l'active pour l'éditer, puis verrouille le reste du document. Vous pouvez utiliser IRM ou la protection par mot de passe, la macro ci-dessous utilise ce dernier. Vous devez remplacer la méthode de sélection ci-dessous par quelque chose de plus élégant

Selection.MoveLeft Unit:=wdCharacter, Count:=11, Extend:=wdExtend 
Selection.Editors.Add wdEditorEveryone 
ActiveDocument.protect Password:="password", NoReset:=False, Type:= _ 
wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False 
0

Vous pourriez être en mesure de le faire en jetant le texte à être protégé en forme de texte et de la protection que. De toute évidence un peu dégoûtant.

0

La réponse ci-dessus laissera un surlignement jaune de la zone modifiable.

Une alternative ajoute ce code Autoopen http://answers.microsoft.com/en-us/office/forum/office_2010-word/remove-highlighting-in-editable-areas-of-protected/bfe22585-c5d3-4c19-997f-092fc4aaaa7a

Sub AutoOpen() 
    ActiveWindow.View.ShadeEditableRanges = False 
End Sub 

Dans Word 2007 (testé), d'une manière plus directe est de créer un contrôle riche de contenu texte et définissez les propriétés. Cela rendra facilement un paragraphe en lecture seule sans faire de mise en évidence.

Sub LockContent() 

Dim objCC As ContentControl 
Set objCC = ActiveDocument.ContentControls.Add(Type:=wdContentControlRichText) 

With objCC 
    .Range.Text = "123123" 'Your text 
    .LockContentControl = True 
    .LockContents = True 
End With 

End Sub 

Plus ContentControl.LockContentControl bien sur https://msdn.microsoft.com/en-us/library/office/ff835775.aspx

Hope this quelqu'un d'aide ayant le même casse-tête! : D

Questions connexes