Bu hızlı kılavuz, Python kullanarak Excel VBA kitaplığına kod ekleme sürecini açıklamaktadır. Geliştirme için IDE’yi ayarlamaya yönelik ayrıntılar, programlama görevlerini tanımlayan adımların bir listesi ve Python kullanarak Excel makro kitaplığının nasıl yapılacağını gösteren örnek bir kod içerir. VBA kitaplığına erişmeyi ve gereksinimlere göre modül/kod eklemeyi öğreneceksiniz.
Python kullanarak Excel VBA Kaynak Kodu Kitaplığı Ekleme Adımları
- VBA kitaplığını güncellemek için IDE’yi Java aracılığıyla Python için Aspose.Cells kullanacak şekilde ayarlayın
- Bir Workbook nesnesi oluşturun, bir sayfaya erişin ve yeni bir module ekleyin
- Modülü oluştururken döndürülen dizini kullanarak yeni oluşturulan modüle erişin
- Modülün adını ayarlayın
- Modül kodunu ayarlayın
- Ortaya çıkan Excel dosyasını XLSM olarak kaydedin
Bu adımlar, Python kullanarak VBA kod kitaplığına erişme ve modül ekleme sürecini özetlemektedir. Bir çalışma kitabı oluşturarak veya yükleyerek, bir çalışma sayfası seçerek ve VBA projesine bir modül ve kod ekleyerek süreci başlatın. Son olarak yeni oluşturulan modülde isim ve kodları ayarlayın ve XLSM dosyasını diske kaydedin.
Python kullanarak VBA Kod Kitaplığını Güncelleme Kodu
import jpype | |
import asposecells as cells | |
jpype.startJVM() | |
from asposecells.api import License, Workbook, SaveFormat | |
# Instantiate a license | |
license = License() | |
license.setLicense("License.lic") | |
# Create a workbook | |
wb = Workbook() | |
# Select a sheet | |
ws = wb.getWorksheets().get(0) | |
# Add VBA Module and get its reference | |
idx = wb.getVbaProject().getModules().add(ws) | |
module = wb.getVbaProject().getModules().get(idx) | |
# Assign a name to the module | |
module.setName("SetGreenEven") | |
# Set code for the module | |
module.setCodes(""" | |
Private Sub Worksheet_Change(ByVal Target As Range) | |
Dim ws As Worksheet | |
Dim cell As Range | |
' Set the active sheet | |
Set ws = ActiveSheet | |
' Check if the changed cells have even numeric values | |
For Each cell In Target | |
If IsNumeric(cell.Value) And cell.Value Mod 2 = 0 Then | |
' Set the background color to green | |
cell.Interior.Color = RGB(0, 255, 0) ' RGB for green | |
Else | |
' If the value is not even, reset the background color to default (optional) | |
cell.Interior.ColorIndex = xlNone | |
End If | |
Next cell | |
End Sub | |
""") | |
# Save the output | |
wb.save("sampleWithMacro.xlsm", SaveFormat.XLSM) | |
print("VBA Module with code added successfully!!!") |
Bu örnek kod, Python* kullanarak *Excel VBA kod kitaplığına kod içeren bir modül ekleme işlemini gösterir. Bu örnek VBA kodu, hücreye çift sayı girdiğinizde her hücrenin arka plan rengini yeşile dönüştürür. Vba modül tipini PROSEDÜR, BELGE, SINIF veya TASARIMCI olarak ayarlayabilirsiniz.
Bu makalede, bir Excel dosyasına makro ekleme işlemi ele alınmıştır. Bir Excel dosyasının korumasını kaldırmak istiyorsanız Python’da Excel’in koruması nasıl kaldırılır hakkındaki makaleye bakın.