Vbaマクロ

Aspose.Slides for PHP via Java を使用して VBA マクロを追加、アクセス、削除する方法を示します。

VBA マクロの追加

VBA プロジェクトとシンプルなマクロ モジュールを含むプレゼンテーションを作成します。

function addVbaMacro() {
    $presentation = new Presentation();
    try {
        $presentation->setVbaProject(new VbaProject());

        $module = $presentation->getVbaProject()->getModules()->addEmptyModule("Module");
        $module->setSourceCode("Sub Test()\n MsgBox \"Hi\" \nEnd Sub");

        $presentation->save("vba_macro.pptm", SaveFormat::Pptm);
    } finally {
        $presentation->dispose();
    }
}

VBA マクロへのアクセス

VBA プロジェクトから最初のモジュールを取得します。

function accessVbaMacro() {
    $presentation = new Presentation("vba_macro.pptm");
    try {
        $firstModule = $presentation->getVbaProject()->getModules()->get_Item(0);
    } finally {
        $presentation->dispose();
    }
}

VBA マクロの削除

VBA プロジェクトからモジュールを削除します。

function removeVbaMacro() {
    $presentation = new Presentation("vba_macro.pptm");
    try {
        // VBA プロジェクトに少なくとも 1 つのモジュールがあると仮定しています。
        $module = $presentation->getVbaProject()->getModules()->get_Item(0);

        $presentation->getVbaProject()->getModules()->remove($module);

        $presentation->save("vba_macro_removed.pptm", SaveFormat::Pptm);
    } finally {
        $presentation->dispose();
    }
}