VBA makroları, PowerPoint sunumlarındaki farklı işlevleri otomatikleştirmek için kullanılır. Örneğin, yinelenen görevleri gerçekleştirmek, çizelgeler ve formlar oluşturmak vb. için VBA’yı kullanabilirsiniz. Bu makalede, PowerPoint VBA makrolarıyla programlı olarak nasıl çalışacağınızı öğreneceksiniz. Makale, özellikle C# kullanarak PowerPoint sunumlarında VBA makrolarının nasıl ekleneceğini, çıkarılacağını veya kaldırılacağını kapsayacaktır.
- PowerPoint VBA Makroları için C# API’si
- C# kullanarak PowerPoint Sunumlarına VBA Makroları Ekleyin
- PowerPoint Sunumlarından VBA Makrolarını Çıkarın
- PowerPoint Sunumlarından VBA Makrolarını Kaldırma
- Ücretsiz API Lisansı Alın
PowerPoint VBA Makroları için C# API’si
Aspose.Slides for .NET, C# kullanarak PowerPoint sunumları oluşturmanıza, düzenlemenize ve dönüştürmenize olanak sağlayan, zengin özelliklere sahip bir API’dir. Ayrıca API, VBA makrolarıyla sorunsuz bir şekilde çalışmanıza olanak tanır. API’yi kullanmak için DLL’sini indirebilir veya NuGet kullanarak yükleyebilirsiniz.
PM> Install-Package Aspose.Slides.NET
C# kullanarak PowerPoint Sunumlarına VBA Makrosu Ekleme
C# kullanarak bir PowerPoint sunumuna VBA makrosu ekleme adımları aşağıda verilmiştir.
- İlk olarak, PowerPoint sunumunu yüklemek için Sunum sınıfının bir örneğini oluşturun.
- Presentation.VbaProject özelliğine yeni bir VbaProject atayın.
- Presentation.VbaProject.Modules.AddEmptyModule(string) yöntemini kullanarak boş bir VBA modülü ekleyin.
- Eklenen modülün referansını bir IVbaModule nesnesine alın.
- IVbaModule.SourceCode özelliğini kullanarak VBA modülüne kaynak kodu ekleyin.
- Microsoft Office referansları oluşturun ve bunları Presentation.VbaProject.References koleksiyonuna ekleyin.
- Son olarak sunum dosyasını Presentation.Save(string, SaveFormat.Pptm) yöntemini kullanarak kaydedin.
Aşağıdaki kod örneği, C# kullanarak bir PowerPoint sunumuna VBA makrosunun nasıl ekleneceğini gösterir.
// Sunumu yükle
using (Presentation presentation = new Presentation("presentation.pptm"))
{
// Yeni VBA Projesi oluştur
presentation.VbaProject = new VbaProject();
// VBA projesine boş modül ekleyin
IVbaModule module = presentation.VbaProject.Modules.AddEmptyModule("Module");
// Modülün kaynak kodunu ayarla
module.SourceCode = @"Sub Test(oShape As Shape) MsgBox ""Test"" End Sub";
// referans oluştur<stdole>
VbaReferenceOleTypeLib stdoleReference =
new VbaReferenceOleTypeLib("stdole", "*\\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\\Windows\\system32\\stdole2.tlb#OLE Automation");
// Office'e başvuru oluştur
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");
// VBA projesine referanslar ekleyin
presentation.VbaProject.References.Add(stdoleReference);
presentation.VbaProject.References.Add(officeReference);
// Sunumu Kaydet
presentation.Save("AddVBAMacros.pptm", SaveFormat.Pptm);
}
C# kullanarak PowerPoint’ten VBA Makrolarını ayıklayın
Aspose.Slides for .NET ayrıca PowerPoint sunumlarındaki VBA projelerinden VBA modüllerini çıkarmanıza olanak tanır. Aşağıda bu işlemi gerçekleştirmek için adımlar verilmiştir.
- İlk olarak, Sunum sınıfını kullanarak makro özellikli PowerPoint sunumunu yükleyin.
- Presentation.VbaProject özelliğinin boş olup olmadığını kontrol edin.
- Presentation.VbaProject.Modules koleksiyonundaki her IVbaModule arasında geçiş yapın.
- Son olarak, IVbaModule.SourceCode özelliğini kullanarak kaynak kodunu çıkarın.
Aşağıdaki kod örneği, C# kullanarak PowerPoint VBA makrolarının nasıl ayıklanacağını gösterir.
// Sunumu yükle
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);
}
}
}
PowerPoint VBA Makrolarını Kaldırma
Belirli bir VBA makrosunu bir PowerPoint sunumundan da kaldırabilirsiniz. Bunun için VBA modülüne dizinine göre erişip VBA projesinden kaldıracaksınız. Aşağıda bu işlemi gerçekleştirmek için adımlar verilmiştir.
- İlk olarak, Sunum sınıfını kullanarak makro özellikli PowerPoint sunumunu yükleyin.
- Presentation.VbaProject.Modules.Remove(Presentation.VbaProject.Modules[0]) yöntemini kullanarak VBA modülünü dizine göre kaldırın.
- Son olarak, güncellenen sunumu Presentation.Save(string, SaveFormat.Pptm) yöntemini kullanarak kaydedin.
Aşağıdaki kod örneği, bir PowerPoint VBA makrosunun nasıl kaldırılacağını gösterir.
// Sunumu yükle
using (Presentation presentation = new Presentation("Presentation.pptm"))
{
// VBA modülünü çıkarın
presentation.VbaProject.Modules.Remove(presentation.VbaProject.Modules[0]);
// Sunumu kaydet
presentation.Save("RemovedVBAMacros.pptm", SaveFormat.Pptm);
}
Ücretsiz API Lisansı Alın
Geçici lisans isteyerek Aspose.Slides for .NET’i değerlendirme kısıtlamaları olmadan deneyebilirsiniz.
Çözüm
Bu makalede, C# kullanarak PowerPoint VBA makrolarıyla nasıl çalışacağınızı öğrendiniz. Özellikle, PowerPoint sunumlarında VBA makrolarının nasıl ekleneceğini, çıkarılacağını ve kaldırılacağını gördünüz. API’nin diğer özelliklerini keşfetmek için belgelere başvurabilirsiniz. Ayrıca, [forumumuz] aracılığıyla 23 sorularınızı bize bildirmekten çekinmeyin.
Ayrıca bakınız
İpucu: Aspose’a ÜCRETSİZ makro kaldırma web uygulaması göz atmak isteyebilirsiniz.