هنگامی که یک تاریخ را در یک سند وارد می کنید، برای Word بسیار مفید است که به طور خودکار یک فاصله بدون گسست بین ماه و روز ماه قرار دهد. بنابراین، "22 ژانویه" بین "y" و "2" یک فضای غیرقابل گسست خواهد داشت. به این ترتیب ماه و روز همیشه با هم در یک خط ظاهر می شوند.
متأسفانه Word به طور پیش فرض این کار را انجام نمی دهد. این بدان معناست که شما چندین راه مختلف برای استفاده از ابزارهای داخلی Word برای حل این وضعیت دارید.
اولین راه حل ممکن این است که استفاده از قابلیت تصحیح خودکار Word را امتحان کنید. اما این ویژگی برای انجام این کار مناسب نیست. چرا؟ زیرا تصحیح خودکار فقط پس از اتمام شکل های Word شروع به کار می کند - به عبارت دیگر، زمانی که شما فاصله را بعد از کلمه یا نویسه پایاندهنده دیگری مانند علامت نقطهگذاری تایپ کنید. بنابراین، اگر میخواهید "ژانویه" را با "ژانویه" و سپس یک فاصله بدون شکستن جایگزین کنید، در واقع با دو فاصله پس از word—فضای بدون شکست در متن جایگزین و فضایی که در حین تایپ، خوب، تایپ کردید.
این ما را به راه حل بالقوه بعدی یعنی بلوک های ساختمانی می رساند. این راه حل در واقع می تواند بسیار خوب کار کند، اما نیاز به تفاوت هایی در نحوه تایپ تاریخ دارد. بهترین راه حل ایجاد 12 بلوک ساختمانی است که هر کدام با نام سه کاراکتری 12 ماه ذخیره می شوند. بنابراین، ورودی "جان" "ژانویه" خواهد بود و پس از آن یک فضای بدون شکست خواهد بود.
چرا به جای بیشتر از سه کاراکتر استفاده کنیم؟ زیرا Word دارای قابلیت دیگری به نام AutoComplete است. اگر تکمیل خودکار روشن است (و به طور پیش فرض روشن است)، سپس Word سعی می کند آنچه را که تایپ می کنید «حدس بزند» و بقیه کلمه یا عبارت را پیشنهاد کند. این کار را به صورت خودکار برای تاریخ ها انجام می دهد، اما تا زمانی که نویسه چهارم را در یک ماه بیشتر از پنج کاراکتر تایپ نکنید، وارد نمی شود. وقتی «Marc» را تایپ میکنید، «مارس» را به عنوان تکمیل کننده پیشنهاد میکنید.
اگر از سه کاراکتر برای ترکیب فاصله ماهانه و بدون فاصله استفاده می کنید، می توانید "Jan" را تایپ کرده و F3 را فشار دهید و در نتیجه ترکیب مورد نظر را بدون فاصله اضافی ایجاد کنید. البته تغییر در نحوه تایپ شما این است که باید به یاد داشته باشید که فقط سه کاراکتر را تایپ کنید و سپس F3 را فشار دهید.
اگر دوست ندارید چنین تغییراتی را در نحوه تایپ به خاطر بسپارید، میتوانید به راحتی یک ماکرو ایجاد کنید که از یک سند عبور میکند و فاصلههای بعد از نام ماه را با یک فاصله بدون شکست جایگزین میکند. موارد زیر برای این منظور بسیار مفید است. :
Sub MonthsWithNonBreakingSpaces()
Dim sMonth As String
Dim iMonth As Integer
Selection.HomeKey unit:=wdStory
For iMonth = 1 To 12
With Selection.Find
.ClearFormatting
.Text = "(" & MonthName(iMonth, False) & ")( )([0-9])"
.MatchWildcards = True
With .Replacement
.ClearFormatting
.Text = "1^s3"
End With
.Execute Replace:=wdReplaceAll
End With
Next iMonth
End Sub