PPTX في بايثون

تسمح لك وحدات ماكرو VBA بأتمتة أنواع مختلفة من العمليات في عروض PowerPoint التقديمية. يمكنك استخدامها لإنشاء المخططات وإخفاء الكائنات المخفية وتنفيذ مهام متكررة مختلفة في العروض التقديمية. أثناء العمل مع عروض PowerPoint التقديمية من داخل تطبيقات Python ، قد تحتاج إلى معالجة وحدات ماكرو VBA. لذلك ، في هذه المقالة ، ستتعلم كيفية إضافة واستخراج وإزالة وحدات ماكرو VBA في PowerPoint باستخدام Python.

مكتبة Python للعمل مع وحدات ماكرو VBA في PowerPoint

للعمل مع وحدات ماكرو VBA في عروض PowerPoint التقديمية ، سنستخدم Aspose.Slides for Python. توفر المكتبة مجموعة غنية من الميزات لإنشاء عروض PowerPoint التقديمية وتحريرها وتحويلها. يمكنك تثبيت المكتبة من PyPI باستخدام الأمر التالي.

> pip install aspose.slides

أضف VBA Macro في عروض PowerPoint التقديمية في Python

فيما يلي خطوات إضافة ماكرو VBA في عرض تقديمي لـ PowerPoint باستخدام Python.

  • أولاً ، استخدم فئة العرض التقديمي لتحميل أو إنشاء عرض PowerPoint التقديمي.
  • بعد ذلك ، قم بإنشاء VbaProject جديد وقم بتعيينه إلى خاصية Presentation.vbaproject.
  • بعد ذلك ، أضف وحدة VBA فارغة باستخدام طريقة Presentation.vbaproject.modules.addemptymodule(string).
  • أضف التعليمات البرمجية المصدر إلى وحدة VBA النمطية باستخدام خاصية IVbaModule.sourcecode.
  • إقران المراجع وإضافتها إلى مجموعة Presentation.vbaproject.references.
  • أخيرًا ، احفظ ملف العرض التقديمي باستخدام طريقة Presentation.save (سلسلة ، SaveFormat.PPTM).

يوضح نموذج التعليمات البرمجية التالي كيفية إضافة ماكرو VBA في عرض تقديمي لـ PowerPoint باستخدام Python.

# إنشاء أو تحميل عرض تقديمي
with slides.Presentation() as presentation:
    # إنشاء مشروع VBA جديد
    presentation.vba_project = slides.vba.VbaProject()

    # أضف وحدة فارغة إلى مشروع VBA
    module = presentation.vba_project.modules.add_empty_module("Module")

    # تعيين رمز مصدر الوحدة النمطية
    module.source_code = "Sub Test(oShape As Shape) MsgBox ""Test"" End Sub"

    # إنشاء مرجع إلى<stdole>
    stdoleReference = slides.vba.VbaReferenceOleTypeLib("stdole", "*\\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\\Windows\\system32\\stdole2.tlb#OLE Automation")

    # إنشاء مرجع إلى Office
    officeReference =slides.vba.VbaReferenceOleTypeLib("Office", "*\\G{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}#2.0#0#C:\\Program Files\\Common Files\\Microsoft Shared\\OFFICE14\\MSO.DLL#Microsoft Office 14.0 Object Library")

    # أضف مراجع إلى مشروع VBA
    presentation.vba_project.references.add(stdoleReference)
    presentation.vba_project.references.add(officeReference)

    # حفظ العرض التقديمي
    presentation.save("add-vba-macro.pptm", slides.export.SaveFormat.PPTM)

استخراج وحدات ماكرو VBA من PowerPoint في Python

يمكنك أيضًا الوصول إلى وحدات ماكرو VBA المضافة إلى عرض PowerPoint تقديمي واستخراج معلوماتها. توضح الخطوات التالية كيفية استخراج وحدات ماكرو VBA وطباعة أسمائها ورمز المصدر في Python.

  • أولاً ، قم بتحميل العرض التقديمي الممكّن بماكرو باستخدام فئة العرض التقديمي.
  • بعد ذلك ، تحقق مما إذا كان العرض التقديمي يحتوي على مشاريع VBA باستخدام الخاصية Presentation.vbaproject.
  • قم بالوصول إلى كل وحدة نمطية لـ VBA في مجموعة Presentation.vbaproject.modules.
  • أخيرًا ، استخرج الكود المصدري واسم وحدة VBA.

يوضح نموذج التعليمات البرمجية التالي كيفية استخراج وحدات ماكرو PowerPoint VBA في Python.

# قم بتحميل عرض تقديمي
with slides.Presentation("presentation.pptm") as presentation:
    
    # تحقق مما إذا كان العرض التقديمي يحتوي على مشروع VBA
    if presentation.vba_project is not None:
        
        # اطبع كل وحدة
       for module in presentation.vba_project.modules:
            print(module.name)
            print(module.source_code)

قم بإزالة وحدات ماكرو VBA من عرض تقديمي لـ PowerPoint

لإزالة ماكرو VBA ، تحتاج إلى الوصول إليه باستخدام الفهرس الخاص به. بمجرد حصولك على مرجع الماكرو ، يمكنك إزالته من المجموعة. فيما يلي خطوات إزالة ماكرو VBA من عرض PowerPoint تقديمي.

  • أولاً ، قم بتحميل عرض PowerPoint التقديمي باستخدام الماكرو باستخدام فئة Presentation.
  • بعد ذلك ، قم بإزالة ماكرو VBA باستخدام طريقة Presentation.vbaproject.modules.remove (Presentation.vbaproject.modules[index]).
  • أخيرًا ، احفظ العرض التقديمي المحدث باستخدام طريقة Presentation.save (سلسلة ، SaveFormat.PPTM).

يوضح نموذج التعليمات البرمجية التالي كيفية إزالة ماكرو VBA في Python.

# قم بتحميل عرض تقديمي
with slides.Presentation("presentation.pptm") as presentation:
    # قم بإزالة ماكرو VBA باستخدام الفهرس
    presentation.vba_project.modules.remove(presentation.vba_project.modules[0])

    # حفظ العرض التقديمي
    presentation.save("remove-vba-macro.pptm", slides.export.SaveFormat.PPTM)

احصل على رخصة مجانية

يمكنك استخدام Aspose.Slides لـ Python بدون قيود تقييمية من خلال الحصول على رخصة مؤقتة مجانية.

استنتاج

في هذه المقالة ، تعلمت كيفية العمل مع وحدات ماكرو VBA في عروض PowerPoint التقديمية باستخدام Python. بمساعدة نماذج التعليمات البرمجية ، أوضحنا كيفية إضافة واستخراج وإزالة وحدات ماكرو VBA في عروض PowerPoint التقديمية. بالإضافة إلى ذلك ، يمكنك زيارة التوثيق لاستكشاف المزيد حول Aspose.Slides for Python. يمكنك أيضًا طرح أسئلتك واستفساراتك عبر المنتدى.

أنظر أيضا