هنگام تایپ در یک سند، Drew می تواند سه خط تیره را تایپ کند و هنگامی که Enter را فشار می دهد ، Word خط تیره ها را به یک خط با عرض کامل تبدیل می کند. او تعجب می کند که چگونه می تواند این کار را در یک ماکرو انجام دهد.
ویژگی در Word که منجر به تبدیل سه خط تیره به یک خط با عرض کامل می شود، AutoFormatting است. این فقط یکی از چیزهایی است که در پسزمینه هنگام تایپ کردن شما انجام میشود—Word به طور مداوم کاراکترهایی را که وارد میکنید و اقداماتی که انجام میدهید تجزیه و تحلیل میکند و سپس با انجام خودکار تبدیل به شما کمک میکند. در این مورد، فقط باید – در یک خط جدید – سه خط تیره را تایپ کرده و کلید Enter را فشار دهید . تبدیل به یک خط تمام عرض بلافاصله انجام می شود.
نحوه انجام AutoFormat در واقع کمی جالب است. ممکن است فکر کنید که می توانید یک ماکرو ضبط کنید تا ببینید AutoFormat چه کاری انجام می دهد، اما نمی توانید. هنگامی که ضبط کننده ماکرو را روشن می کنید، سه خط تیره تایپ کنید و Enter را فشار دهید ، AutoFormat مطلقاً کاری انجام نمی دهد - خط تیره ها باقی می مانند و هیچ خطی ظاهر نمی شود.
بنابراین، استفاده از روش کارآگاهی متفاوت برای فهمیدن اینکه چه اتفاقی در حال وقوع است، مفید است. کاری که من انجام دادم این بود که یک سند کاملاً جدید را باز کردم و مطمئن شدم که کاراکترهای غیرچاپی نمایش داده می شوند. (این کار ضروری است تا بتوانید ببینید که علامتهای پاراگراف - بازگشتهای سخت - در کجای سند قرار دارند.) سپس تعدادی اعداد را تایپ کردم تا بتوانم به پاراگرافها اشاره کنم، اما مطمئن شدم که یک پاراگراف "خالی" در وسط وجود دارد. (شکل 1 را ببینید.)

شکل 1. تنظیم برای تست AutoFormat.
پاراگراف خالی (بین پاراگراف 4 و 5) جایی است که من سه خط تیره را برای آزمایش AutoFormat تایپ می کنم. وقتی آنها را تایپ می کنم و سپس Enter را فشار می دهم، نتیجه یک خط زیر در پاراگراف 4 است. (شکل 2 را ببینید.)

شکل 2. یک زیر خط اضافه شده توسط AutoFormat.
با قرار دادن نقطه درج روی آن خط و نمایش کادر محاوره ای Borders and Shading می توانید متوجه شوید که خط زیر در پاراگراف 4 قرار دارد. وقتی کادر محاورهای را با نقطه درج در هر خط دیگری نمایش میدهید، هیچ مرزی وجود ندارد - فقط در پاراگراف 4 است.
سپس یک پاراگراف خالی بین پاراگراف های 7 و 8 اضافه کردم تا ببینم وقتی سه زیرخط تایپ می کنم و Enter را فشار می دهم AutoFormat چه کاری انجام می دهد . وقتی این کار را انجام دادم، دقیقاً همان چیزی که قبلا ذکر شد اتفاق افتاد. تنها تفاوت این بود که حاشیه اضافه شده به بند 7 وزن بیشتری داشت (ضخیم تر بود) سپس حاشیه به بند 4 اضافه شد. (شکل 3 را ببینید.)

شکل 3. یک زیرخط اضافه شده با تایپ سه خط زیر.
بنابراین، با تایپ سه خط تیره و سه خط زیر، حاشیه ای به پاراگراف قبلی اضافه می شود (بعد از حذف پاراگراف دارای خط تیره یا زیرخط)، تنها تفاوت آن در وزن خط زیر است. علاوه بر این، اگر به کادر محاورهای Borders and Shading در نمونههای بالا دقت کنید، متوجه خواهید شد که وقتی سه خط تیره تایپ میکنید، AutoFormat از عرض حاشیه 0.75 نقطه استفاده میکند و اگر سه خط زیر خط تایپ کنید، از عرض حاشیه 1.50 استفاده میکند. نکته ها.
تکرار این رفتار در یک ماکرو نسبتا آسان است. در واقع نیازی نیست که سه خط تیره یا زیرخط اضافه کنید و سپس آنها و پاراگراف آنها را حذف کنید؛ این کار اضافی است. در عوض، ماکرو می تواند به سادگی به پاراگراف قبلی رفته و مرز پایینی را برای آن پاراگراف تعیین کند.
Sub BottomBorder()
Selection.MoveUp Unit:=wdParagraph, Count:=1
With Selection.Borders(wdBorderBottom)
.LineStyle = wdLineStyleSingle
.LineWidth = wdLineWidth075pt
.Color = wdColorAutomatic
End With
End Sub
اگر می خواهید رفتار AutoFormat را هنگام تایپ سه زیرخط و فشار دادن Enter تقلید کنید، تنها کاری که باید انجام دهید این است که شمارش wdLineWidth075pt در ماکرو بالا را به wdLineWidth150pt تغییر دهید.