Dianne متعجب است که آیا راهی برای ایجاد یک الگو وجود دارد که هر سبک جدیدی را از معرفی حذف کند. مشتریان مطالب را با قالببندی و سبکها در اسناد او میچسبانند و این میتواند مشکلاتی ایجاد کند. او میخواهد یک الگوی عمومی بسازد که سندی ایجاد کند که سبکهای غیرقالب را قفل کند.
این مشکل سالها (اگر نه دههها) کاربران ورد را آزار میدهد. میتوانید زمان زیادی را صرف کنید تا الگو و شیوه نامه خود را همانطور که میخواهید تهیه کنید، سپس آن را برای شخص دیگری بفرستید تا با فهرست سبک (و قالببندی سند) در معادل الکترونیکی تارها بازگردانده شود.
چندین روش وجود دارد که میتوانید برای اصلاح این وضعیت استفاده کنید. ابتدا، میتوانید رویکرد «لطفاً این کار را نکنید» را امتحان کنید، جایی که به سادگی از دیگران میخواهید چیزی را در سند شما جایگذاری نکنند. یا اگر باید چیزی را جایگذاری کنند، از آنها بخواهید از یکی از انواع Paste Special استفاده کنند که اجازه چسباندن را میدهد. بدون قالب بندی
اگر می خواهید رویکرد قوی تری داشته باشید، این مراحل را دنبال کنید:

شکل 1. زبانه Restrict از کادر محاوره ای Manage Styles.
- قالب خود (از جمله سبک ها) را به دلخواه تنظیم کنید.
- با بارگذاری قالب در Word، تب Home روبان را نمایش دهید.
- روی نماد کوچک در پایین سمت راست گروه Styles کلیک کنید. Word صفحه Styles را در سمت راست صفحه نمایش شما نمایش می دهد.
- در پایین صفحه Styles، روی نماد Manage Styles کلیک کنید. (اگر نمی توانید بفهمید کدام نماد است، نشانگر ماوس را روی هر نماد نگه دارید تا زمانی که ToolTip "Manage Styles" را ببینید.) Word کادر محاوره ای Manage Styles را نمایش می دهد.
- مطمئن شوید که زبانه Restrict انتخاب شده است. (شکل 1 را ببینید.)
- از سبکهای فهرست شده در کادر محاورهای، مجموعهای از سبکهایی که میخواهید کاربر استفاده کند، ایجاد کنید. (مجموعه انتخابی را با کلیک کردن روی نام سبک و سپس نگه داشتن کلید Ctrl در حالی که روی نام های سبک دیگر کلیک می کنید، ایجاد کنید.)
- 7 بر روی کادر انتخاب Limit Formatting to Permitted Styles کلیک کنید.
- روی OK کلیک کنید.
- قالب خود را ذخیره کنید
از نظر تئوری، هر سند مبتنی بر الگو، سبک هایی را که کاربر می تواند در قالب بندی خود استفاده کند، محدود می کند. چیزی که مشخص نیست این است که آیا این به محدود کردن سبکهایی که میتوان در سند چسباند نیز گسترش مییابد. اگر نسخه ماکرو اجباری این رویکرد را ترجیح می دهید، می توانید از ماکروهای شرح داده شده در وبلاگ زیر استفاده کنید:
http://blogs.msdn.com/b/ericwhite/archive/2010/01/27/programmatically-limiting-styles-in-word.aspx
البته، میتوانید مجموعهای از ماکروها را ایجاد کنید که افراد را از چسباندن متن فرمتشده در یک سند بازدارد. (ماکروها را در قالبی که سند بر اساس آن است قرار دهید و به طور خودکار به سند ارسال می شوند. هشدار عادی: اگر کاربر ماکروها را فعال نکند، این رویکرد تقریباً هیچ ارزشی ندارد.)
به عنوان مثال، یک روش برای جلوگیری از اضافه شدن سبک های جدید، تعیین تعداد سبک های قبل و بعد از چسباندن است. اگر تعداد افزایش یافته باشد، ماکرو شما میتواند چسباندن را خنثی کند و گزینههایی را در اختیار کاربر بگذارد که به عنوان متن ساده در کلیپبورد جایگذاری کند یا آن را لغو کند. این روش همچنین از معرفی سبک ها از جداول و جعبه متن جلوگیری می کند.
مهم است که بدانیم هیچ رویداد خمیری «عمومی» وجود ندارد که بتوان در VBA به دام افتاد. در عوض، لازم است چندین دستور داخلی Word را سفارشی کنید. دستورات زیر جایگزین چهار تا از این دستورات می شوند.
Sub EditPaste()
Dim k As Long
Options.PasteFormatBetweenDocuments = wdMatchDestinationFormatting
Options.PasteFormatBetweenStyledDocuments = wdUseDestinationStyles
k = ActiveDocument.Styles.Count
Selection.Range.Paste
If k <> ActiveDocument.Styles.Count Then
ActiveDocument.Undo
MsgBox "Paste unsuccessful. You tried to introduce new styles."
End If
End Sub
Sub EditPasteSpecial()
Dim k As Long
Dim lk As Boolean
Options.PasteFormatBetweenDocuments = wdMatchDestinationFormatting
Options.PasteFormatBetweenStyledDocuments = wdUseDestinationStyles
k = ActiveDocument.Styles.Count
With Dialogs(wdDialogEditPasteSpecial)
.Show
lk = .link
End With
If lk Then
ActiveDocument.Undo
MsgBox "You are not allowed to paste links"
Exit Sub
End If
If k <> ActiveDocument.Styles.Count Then
ActiveDocument.Undo
If MsgBox("You have tried to introduce new styles." & vbCrLf & _
"Do you want to paste as plain text?", vbYesNo) = vbYes Then _
Selection.Range.PasteSpecial datatype:=wdPasteText
End If
End Sub
Sub PasteDestinationFormatting()
Dim k As Long
k = ActiveDocument.Styles.Count
Selection.Range.Paste
If k <> ActiveDocument.Styles.Count Then
ActiveDocument.Undo
MsgBox "Paste unsuccessful. You tried to introduce new styles."
End If
End Sub
Sub PasteSourceFormatting()
MsgBox "You are not allowed to paste with source formatting"
End Sub
یکی دیگر از رویکردهای غیر کلان تغییر حفاظت از سند است. با بارگذاری قالب در Word، مراحل زیر را دنبال کنید:

شکل 2. کادر محاوره ای محدودیت های قالب بندی.
- تب Developer روبان را نمایش دهید.
- روی ابزار Restrict Editing در گروه Protect کلیک کنید. Word پنجره ویرایش محدود را در سمت راست سند شما نمایش می دهد.
- در قسمت محدودیتهای قالببندی، تیک گزینه Limit Formatting to a Selection of Styles را انتخاب کنید.
- روی پیوند تنظیمات، درست در زیر کادر انتخاب کلیک کنید. Word کادر محاوره ای محدودیت های قالب بندی را نمایش می دهد. (شکل 2 را ببینید.)
- اطمینان حاصل کنید که لیست سبک ها منعکس کننده سبک هایی است که می خواهید کاربر بتواند از آنها استفاده کند.
- تیک باکس های پایین کادر محاوره ای را به دلخواه تنظیم کنید.
- روی OK کلیک کنید. Word کادر محاوره ای محدودیت های قالب بندی را می بندد.
- اگر محدودیتهایی که ایجاد کردهاید برخی تضادهای احتمالی را با سبکهای استفاده شده در سند ایجاد کند، Word از شما میپرسد که میخواهید چه کار کنید. (به دلخواه پاسخ دهید.)
- روی Yes, Start Enforcing Protection کلیک کنید. Word کادر محاوره ای Start Enforcing Protection را نمایش می دهد.
- در صورت تمایل یک رمز عبور برای محافظت وارد کنید. (شما باید آن را دو بار وارد کنید.)
- روی OK کلیک کنید.
- پنجره کار محدود کردن فرمت و ویرایش را ببندید.
- قالب خود را ذخیره کنید