add remove powerpoint vba C#

Macro VBA được sử dụng để tự động hóa các chức năng khác nhau trong bản trình bày PowerPoint. Ví dụ: bạn có thể sử dụng VBA để thực hiện các tác vụ lặp lại, tạo biểu đồ và biểu mẫu, v.v. Trong bài viết này, bạn sẽ học cách làm việc với các macro PowerPoint VBA theo lập trình. Đặc biệt, bài viết sẽ trình bày cách thêm, trích xuất hoặc loại bỏ macro VBA trong bản trình bày PowerPoint sử dụng C#.

C# API cho PowerPoint VBA Macro

Aspose.Slides for .NET là một API giàu tính năng cho phép bạn tạo, chỉnh sửa và chuyển đổi các bản trình bày PowerPoint bằng C#. Hơn nữa, API cho phép bạn làm việc với các macro VBA một cách liền mạch. Để sử dụng API, bạn có thể tải xuống DLL của nó hoặc cài đặt nó bằng NuGet.

PM> Install-Package Aspose.Slides.NET

Thêm Macro VBA trong Bản trình bày PowerPoint bằng C#

Sau đây là các bước để thêm macro VBA trong bản trình bày PowerPoint bằng C#.

Mẫu mã sau đây cho biết cách thêm macro VBA trong bản trình bày PowerPoint bằng C#.

// Tải bản trình bày
using (Presentation presentation = new Presentation("presentation.pptm"))
{
    // Tạo dự án VBA mới
    presentation.VbaProject = new VbaProject();

    // Thêm mô-đun trống vào dự án VBA
    IVbaModule module = presentation.VbaProject.Modules.AddEmptyModule("Module");
  
    // Đặt mã nguồn của mô-đun
    module.SourceCode = @"Sub Test(oShape As Shape) MsgBox ""Test"" End Sub";

    // Tạo tham chiếu đến<stdole>
    VbaReferenceOleTypeLib stdoleReference =
        new VbaReferenceOleTypeLib("stdole", "*\\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\\Windows\\system32\\stdole2.tlb#OLE Automation");

    // Tạo tham chiếu đến Office
    VbaReferenceOleTypeLib officeReference =
        new 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");

    // Thêm tham chiếu vào dự án VBA
    presentation.VbaProject.References.Add(stdoleReference);
    presentation.VbaProject.References.Add(officeReference);
    
    // Lưu bản trình bày
    presentation.Save("AddVBAMacros.pptm", SaveFormat.Pptm);
}

Trích xuất Macro VBA từ PowerPoint bằng C#

Aspose.Slides for .NET cũng cho phép bạn trích xuất các mô-đun VBA từ các dự án VBA trong bản trình bày PowerPoint. Sau đây là các bước để thực hiện thao tác này.

Mẫu mã sau đây cho thấy cách trích xuất macro PowerPoint VBA bằng C#.

// Tải bản trình bày
using (Presentation pres = new Presentation("presentation.pptm"))
{
	if (pres.VbaProject != null) // check if Presentation contains VBA Project
	{
		foreach (IVbaModule module in pres.VbaProject.Modules)
		{
			Console.WriteLine(module.Name);
			Console.WriteLine(module.SourceCode);
		}
	}
}

Loại bỏ các Macro PowerPoint VBA

Bạn cũng có thể xóa một macro VBA cụ thể khỏi bản trình bày PowerPoint. Đối với điều này, bạn sẽ truy cập và loại bỏ mô-đun VBA theo chỉ mục của nó khỏi dự án VBA. Sau đây là các bước để thực hiện thao tác này.

Mẫu mã sau đây cho biết cách loại bỏ macro PowerPoint VBA.

// Tải bản trình bày
using (Presentation presentation = new Presentation("Presentation.pptm"))
{
    // Loại bỏ mô-đun VBA
    presentation.VbaProject.Modules.Remove(presentation.VbaProject.Modules[0]);

    // Lưu bản trình bày
    presentation.Save("RemovedVBAMacros.pptm", SaveFormat.Pptm);
}

Nhận giấy phép API miễn phí

Bạn có thể dùng thử Aspose.Slides for .NET mà không có giới hạn đánh giá bằng cách yêu cầu giấy phép tạm thời.

Sự kết luận

Trong bài viết này, bạn đã học cách làm việc với macro PowerPoint VBA bằng C#. Đặc biệt, bạn đã thấy cách thêm, trích xuất và loại bỏ macro VBA trong bản trình bày PowerPoint. Để khám phá các tính năng khác của API, bạn có thể tham khảo tài liệu. Hơn nữa, bạn có thể cho chúng tôi biết về các thắc mắc của bạn thông qua diễn đàn của chúng tôi.

Xem thêm

Mẹo: Bạn có thể muốn xem Aspose Ứng dụng web xóa macro MIỄN PHÍ.