بازم اکسل و بازم چیزهای جدید. تو یه فایلی که داشتم برای یکی از همکاران شرکتمون آماده میکردم نیاز شد بصورت انتخابی یک سری از صفحات ( Page Break ) شیت ها رو بصورت پی دی اف خروجی بگیریم و در جایی ذخیره کنیم . برای این کار یکم سرچ کردم و از vba برای فرمول نویسی و ذخیره سازی صفحات استفاده کردم که فرمتش به شکل زیره :


Ws.ExportAsFixedFormat _

    Type:=xlTypePDF, _

    Filename:=folder_address & "\" & sheat_name & ".pdf", _

    Quality:=xlQualityStandard, _

    From:=first_page_break, _

    To:=last_page_break, _

    IncludeDocProperties:=True, _

    IgnorePrintAreas:=False, _

    OpenAfterPublish:=False


این فرمول میاد یک شیت (ws) رو برای استخراج (ExportAsFixedFormat) بصورت فایل پی دی اف (Type:=xlTypePDF) در آدرس و با نام خاص (Filename:=folder_address & "\" & sheat_name & ".pdf") بصورتی که از صفحه (From:=first_page_break) تا صفحه (To:=last_page_break ) رو جدا سازی کرده ذخیره میکنه . 

folder_address در اینجا یه آدرس از پیش تعریف شده است 

sheat_name  هم نام فایلی که میخوایم ذخیره کنیم 

first_page_break و  last_page_break هم اعدادی برای شماره صفحات در خروجیه

باقی خصوصیات هم از اسمشون مشخصه .


من برای اینکه بتونید پروژه رو بصورت عملی هم ببینید یه فایل اکسل آماده کردم و در GitHub قرار دادم .

منبع زبان اصلی آموزش هم میتونید اینجا ببنید 

امیدوارم مفید بوده باشه . سوالی بود در خدمتم