Marking parts of a document uneditable

D

David Thielen

Hi;

In http://msdn.microsoft.com/en-us/library/ms178793.aspx and
http://msdn.microsoft.com/en-us/library/bb386181.aspx it says you can
set parts of a document to be non-editable. A couple of questions:

1) Is this Word only or can it be done in Excel and/or PowerPoint
also?

1) Can this be done from the Office UI or only in code?

2) Does this require VSTO or can we do it using our IExtensibility
AddIn?

3) If it requires the AddIn, what happens if it is opened in Office
without the AddIn - is the whole document now editable?

4) Are there any limits on what can/cannot be marked uneditable?

thanks - dave

david@[email protected]
Windward Reports -- http://www.WindwardReports.com
me -- http://dave.thielen.com

Cubicle Wars - http://www.windwardreports.com/film.htm
 
J

Jie Wang [MSFT]

Hi Dave,

You provided two links which contains two different concepts. Let me
clarify these first before answering your questions.

In http://msdn.microsoft.com/en-us/library/ms178793.aspx (How to: Protect
Documents and Parts of Documents), this is the feature for protecting the
entire document, and then optionally, make some exceptional parts editable.

In http://msdn.microsoft.com/en-us/library/bb386181.aspx (How to: Protect
Parts of Documents by Using Content Controls), this is the new feature
available in Word 2007, something like a field and you can set it as
non-editable or even non-deletable. It has nothing to do with the entire
document protection and it is a Word only feature. It is part of the Word
2007 object model, so you can access it via your add-in code and also VSTO
/ VBA. If you want to know more about content controls, this is a very
helpful webcast to watch:
http://www.microsoft.com/uk/msdn/screencasts/screencast/235/Structuring-Docu
ments-in-Word-2007-Using-Content-Controls.aspx.

Now let's get more specific on the *entire document* protection.

1) Is this Word only or can it be done in Excel and/or PowerPoint also?

This is not Word only.

In Word, we can protect the entire document and set some parts editable to
all or certain users.
In Excel, we can do the similar to Worksheets.
In PowerPoint, not really, we can only set protection to the entire
presentation when Information Rights Management is available.

2) Can this be done from the Office UI or only in code?

Both.

For 2003 Office, the options can be found in Tools -> Protect Document /
Worksheet menu.
For 2007 Office, the options can be found in the Review Tab.

Using code, here is a short Word sample:

object missing = Type.Missing;
// Create a Word instance. In Add-In, we don't need to do this.
Word.Application app = new Word.ApplicationClass();

app.Visible = true;
app.Documents.Add(ref missing, ref missing, ref missing, ref missing);
app.Selection.TypeText("Hello! This area is editable.");

// select editable area
object unit = Word.WdUnits.wdCharacter;
object count = 22;
object extend = Word.WdMovementType.wdExtend;
app.Selection.MoveLeft(ref unit, ref count, ref extend);

// add selection into editable areas
object editorID = Word.WdEditorType.wdEditorEveryone;
app.Selection.Editors.Add(ref editorID);

// protect the document
app.ActiveDocument.Protect(Word.WdProtectionType.wdAllowOnlyReading,
ref missing, ref missing, ref missing, ref missing);

3) Does this require VSTO or can we do it using our IExtensibility AddIn?

This feature is part of the Office object model, we can access it via
various of ways - like VSTO, IExtensibility AddIn and VBA.

4) If it requires the AddIn, what happens if it is opened in Office without
the AddIn - is the whole document now editable?

No require of the AddIn. It will always be protected in Office application.

5) Are there any limits on what can/cannot be marked uneditable?

The edit restriction (content and style) is applied on the entire document
/ worksheet. We can select parts of the content to be editable.

Best regards,

Jie Wang ([email protected], remove 'online.')

Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/en-us/subscriptions/aa948868.aspx#notifications.

Note: MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 2 business days is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions. Issues of this
nature are best handled working with a dedicated Microsoft Support Engineer
by contacting Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/en-us/subscriptions/aa948874.aspx
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
 
D

David Thielen

THANK YOU!!!!!

Hi Dave,

You provided two links which contains two different concepts. Let me
clarify these first before answering your questions.

In http://msdn.microsoft.com/en-us/library/ms178793.aspx (How to: Protect
Documents and Parts of Documents), this is the feature for protecting the
entire document, and then optionally, make some exceptional parts editable.

In http://msdn.microsoft.com/en-us/library/bb386181.aspx (How to: Protect
Parts of Documents by Using Content Controls), this is the new feature
available in Word 2007, something like a field and you can set it as
non-editable or even non-deletable. It has nothing to do with the entire
document protection and it is a Word only feature. It is part of the Word
2007 object model, so you can access it via your add-in code and also VSTO
/ VBA. If you want to know more about content controls, this is a very
helpful webcast to watch:
http://www.microsoft.com/uk/msdn/screencasts/screencast/235/Structuring-Docu
ments-in-Word-2007-Using-Content-Controls.aspx.

Now let's get more specific on the *entire document* protection.

1) Is this Word only or can it be done in Excel and/or PowerPoint also?

This is not Word only.

In Word, we can protect the entire document and set some parts editable to
all or certain users.
In Excel, we can do the similar to Worksheets.
In PowerPoint, not really, we can only set protection to the entire
presentation when Information Rights Management is available.

2) Can this be done from the Office UI or only in code?

Both.

For 2003 Office, the options can be found in Tools -> Protect Document /
Worksheet menu.
For 2007 Office, the options can be found in the Review Tab.

Using code, here is a short Word sample:

object missing = Type.Missing;
// Create a Word instance. In Add-In, we don't need to do this.
Word.Application app = new Word.ApplicationClass();

app.Visible = true;
app.Documents.Add(ref missing, ref missing, ref missing, ref missing);
app.Selection.TypeText("Hello! This area is editable.");

// select editable area
object unit = Word.WdUnits.wdCharacter;
object count = 22;
object extend = Word.WdMovementType.wdExtend;
app.Selection.MoveLeft(ref unit, ref count, ref extend);

// add selection into editable areas
object editorID = Word.WdEditorType.wdEditorEveryone;
app.Selection.Editors.Add(ref editorID);

// protect the document
app.ActiveDocument.Protect(Word.WdProtectionType.wdAllowOnlyReading,
ref missing, ref missing, ref missing, ref missing);

3) Does this require VSTO or can we do it using our IExtensibility AddIn?

This feature is part of the Office object model, we can access it via
various of ways - like VSTO, IExtensibility AddIn and VBA.

4) If it requires the AddIn, what happens if it is opened in Office without
the AddIn - is the whole document now editable?

No require of the AddIn. It will always be protected in Office application.

5) Are there any limits on what can/cannot be marked uneditable?

The edit restriction (content and style) is applied on the entire document
/ worksheet. We can select parts of the content to be editable.

Best regards,

Jie Wang ([email protected], remove 'online.')

Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/en-us/subscriptions/aa948868.aspx#notifications.

Note: MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 2 business days is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions. Issues of this
nature are best handled working with a dedicated Microsoft Support Engineer
by contacting Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/en-us/subscriptions/aa948874.aspx
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.


david@[email protected]
Windward Reports -- http://www.WindwardReports.com
me -- http://dave.thielen.com

Cubicle Wars - http://www.windwardreports.com/film.htm
 
D

David Thielen

Hi;

How do I make just some cells editable in Excel? All I can find is
protecting the entire worksheet.

thanks - dave



Hi Dave,

You provided two links which contains two different concepts. Let me
clarify these first before answering your questions.

In http://msdn.microsoft.com/en-us/library/ms178793.aspx (How to: Protect
Documents and Parts of Documents), this is the feature for protecting the
entire document, and then optionally, make some exceptional parts editable.

In http://msdn.microsoft.com/en-us/library/bb386181.aspx (How to: Protect
Parts of Documents by Using Content Controls), this is the new feature
available in Word 2007, something like a field and you can set it as
non-editable or even non-deletable. It has nothing to do with the entire
document protection and it is a Word only feature. It is part of the Word
2007 object model, so you can access it via your add-in code and also VSTO
/ VBA. If you want to know more about content controls, this is a very
helpful webcast to watch:
http://www.microsoft.com/uk/msdn/screencasts/screencast/235/Structuring-Docu
ments-in-Word-2007-Using-Content-Controls.aspx.

Now let's get more specific on the *entire document* protection.

1) Is this Word only or can it be done in Excel and/or PowerPoint also?

This is not Word only.

In Word, we can protect the entire document and set some parts editable to
all or certain users.
In Excel, we can do the similar to Worksheets.
In PowerPoint, not really, we can only set protection to the entire
presentation when Information Rights Management is available.

2) Can this be done from the Office UI or only in code?

Both.

For 2003 Office, the options can be found in Tools -> Protect Document /
Worksheet menu.
For 2007 Office, the options can be found in the Review Tab.

Using code, here is a short Word sample:

object missing = Type.Missing;
// Create a Word instance. In Add-In, we don't need to do this.
Word.Application app = new Word.ApplicationClass();

app.Visible = true;
app.Documents.Add(ref missing, ref missing, ref missing, ref missing);
app.Selection.TypeText("Hello! This area is editable.");

// select editable area
object unit = Word.WdUnits.wdCharacter;
object count = 22;
object extend = Word.WdMovementType.wdExtend;
app.Selection.MoveLeft(ref unit, ref count, ref extend);

// add selection into editable areas
object editorID = Word.WdEditorType.wdEditorEveryone;
app.Selection.Editors.Add(ref editorID);

// protect the document
app.ActiveDocument.Protect(Word.WdProtectionType.wdAllowOnlyReading,
ref missing, ref missing, ref missing, ref missing);

3) Does this require VSTO or can we do it using our IExtensibility AddIn?

This feature is part of the Office object model, we can access it via
various of ways - like VSTO, IExtensibility AddIn and VBA.

4) If it requires the AddIn, what happens if it is opened in Office without
the AddIn - is the whole document now editable?

No require of the AddIn. It will always be protected in Office application.

5) Are there any limits on what can/cannot be marked uneditable?

The edit restriction (content and style) is applied on the entire document
/ worksheet. We can select parts of the content to be editable.

Best regards,

Jie Wang ([email protected], remove 'online.')

Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/en-us/subscriptions/aa948868.aspx#notifications.

Note: MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 2 business days is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions. Issues of this
nature are best handled working with a dedicated Microsoft Support Engineer
by contacting Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/en-us/subscriptions/aa948874.aspx
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.


david@[email protected]
Windward Reports -- http://www.WindwardReports.com
me -- http://dave.thielen.com

Cubicle Wars - http://www.windwardreports.com/film.htm
 
J

Jie Wang [MSFT]

Hi Dave,

To make just some cells editable in Excel:

Manually on UI:

2003:

Step 1: on Main menu ->Tools -> Protection -> Allow Users to Edit Ranges...
Then select editable range.
Step 2: on Main menu ->Tools -> Protection -> Protect Sheet...

2007:

Step 1: on Review Tab -> Changes Group -> Allow Users to Edit Ranges...
Then select editable range.
Step 2: on Review Tab -> Changes Group -> Protect Sheet

Program via OM (C#):

Worksheet sheet = (Worksheet)app.ActiveSheet;
Range editable = sheet.get_Range("A1", "B2");

sheet.Protection.AllowEditRanges.Add(
"EditableRange",
editable,
"Password for Edit, can be null");

sheet.Protect("Password for unprotect, can be null", true, true, true,
null, null, null, null, null, null, null,
null, null, null, null, null);

Regards,

Jie Wang ([email protected], remove 'online.')

Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/en-us/subscriptions/aa948868.aspx#notifications.

Note: MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 2 business days is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions. Issues of this
nature are best handled working with a dedicated Microsoft Support Engineer
by contacting Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/en-us/subscriptions/aa948874.aspx
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
 
D

David Thielen

Again, thank you.


Hi Dave,

To make just some cells editable in Excel:

Manually on UI:

2003:

Step 1: on Main menu ->Tools -> Protection -> Allow Users to Edit Ranges...
Then select editable range.
Step 2: on Main menu ->Tools -> Protection -> Protect Sheet...

2007:

Step 1: on Review Tab -> Changes Group -> Allow Users to Edit Ranges...
Then select editable range.
Step 2: on Review Tab -> Changes Group -> Protect Sheet

Program via OM (C#):

Worksheet sheet = (Worksheet)app.ActiveSheet;
Range editable = sheet.get_Range("A1", "B2");

sheet.Protection.AllowEditRanges.Add(
"EditableRange",
editable,
"Password for Edit, can be null");

sheet.Protect("Password for unprotect, can be null", true, true, true,
null, null, null, null, null, null, null,
null, null, null, null, null);

Regards,

Jie Wang ([email protected], remove 'online.')

Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/en-us/subscriptions/aa948868.aspx#notifications.

Note: MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 2 business days is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions. Issues of this
nature are best handled working with a dedicated Microsoft Support Engineer
by contacting Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/en-us/subscriptions/aa948874.aspx
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.


david@[email protected]
Windward Reports -- http://www.WindwardReports.com
me -- http://dave.thielen.com

Cubicle Wars - http://www.windwardreports.com/film.htm
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top