وندی می خواهد شماره های صفحه را در هدر برگه چاپی اش بگنجاند، اما با یک پیچ - صفحه 21A در صفحه 1، صفحه 21B در صفحه 2، صفحه 21C در صفحه 3، و غیره. طرح.
چند راه برای مقابله با این مشکل وجود دارد که همه آنها شامل استفاده از ماکروها هستند. اگر واقعاً می خواهید همه کاربرگ ها را در ورک بوک فعلی چاپ کنید و طول هیچ کدام از آن کاربرگ ها بیش از یک صفحه نباشد (هنگامی که چاپ می شوند)، ماکرو زیر بخش مرکزی هدر را مطابق درخواست تنظیم می کند:
Sub PageNums1()
Dim sheet As Worksheet
Dim J As Integer
J = 1
On Error Resume Next
For Each sheet In Worksheets
Sheets(J).PageSetup.CenterHeader = "Page 21" & Chr(64 + J)
J = J + 1
Next
End Sub
توجه داشته باشید که ماکرو در واقع چیزی را چاپ نمی کند. تمام کاری که انجام می دهد تغییر اطلاعات هدر است. اگر واقعاً می خواهید کاربرگ فعلی را چاپ کنید و آن کاربرگ به چندین صفحه در چاپ نیاز دارد، موارد زیر باید به خوبی کار کنند:
Sub PageNums2()
Dim X As Integer
Dim Y As Integer
Dim Z As Integer
Z = 1
For X = 1 To ActiveSheet.HPageBreaks.Count + 1
For Y = 1 To ActiveSheet.VPageBreaks.Count + 1
ActiveSheet.PageSetup.CenterHeader = _
"Page 21" & Chr$(64 + Z)
Worksheets.PrintOut Z, Z
Z = Z + 1
Next Y
Next X
End Sub
این ماکرو صفحات را بر اساس موقعیت بریک های صفحه افقی (HPageBreaks) و عمودی (VPageBreaks) در پرینت محاسبه می کند. شما همچنین می توانید فقط با مجموعه صفحات کار کنید، به این روش:
Sub PageNums3()
Dim J As Integer
For J = 1 To ActiveSheet.PageSetup.Pages.Count
ActiveSheet.PageSetup.CenterHeader = "Page 21" & Chr(64 + J)
Worksheets.PrintOut J, J
Next J
End Sub
باید توجه داشته باشید که صرف نظر از رویکردی که انتخاب می کنید، اگر پرینت به بیش از 26 صفحه نیاز داشته باشد، با مشکل مواجه خواهید شد.