اذهب الي المحتوي
أوفيسنا

طلب كيفية اختصار كود VBA طويل


إذهب إلى أفضل إجابة Solved by محي الدين ابو البشر,

الردود الموصى بها

السلام عليم

لدي صفحة اكسل تعرض معلومات العمال وتتغير بمجرد تغيير رقم التعريفي للعامل في الخلية C1 (وارقام التعريفية للعمال من 1 إلى 2000)

وهدفي هو  تصدير ملف كل عامل في صفحة على شكل ملف PDF على جهازي

فعلت ذلك عبر ماكرو ونجحت ولكن اضطر لتكرار كتابة رقم العامل في كل مرة

 ActiveCell.FormulaR1C1

كما تشاهدون  في كود التالي:


 

  Range("C1").Select
    ActiveCell.FormulaR1C1 = "1"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\Users\Ahmed\Desktop\" & Range("Sheet1!c2") & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False

    Range("C1").Select
    ActiveCell.FormulaR1C1 = "2"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\Users\Ahmed\Desktop\" & Range("Sheet1!c2") & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False

    Range("C1").Select
    ActiveCell.FormulaR1C1 = "3"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\Users\Ahmed\Desktop\" & Range("Sheet1!c2") & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False

أريد كود يسمح لي بكتابة عدد الأرقام التي اريدها مثلا من 1 إلى 2000 وهو يقوم بذلك تلقائيا ويصدر 2000 صفحة خاصة ب 2000 عامل

يكون شبيه بهذا من اجل الاختصار

    Range("C1").Select  from 1 to 2000

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\Users\Ahmed\Desktop\" & Range("Sheet1!c2") & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False

 

وشكرا مسبقا

رابط هذا التعليق
شارك

  • أفضل إجابة

السلام عليكم

ما رأيك بـ

s = InputBox("Start form?")
e = InputBox("To?")
For i = s To e
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\Users\Ahmed\Desktop\" & i & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False
        Next

 

  • Like 1
رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information