Ovaj brzi vodič objašnjava postupak dodavanja koda u Excel VBA biblioteku pomoću Pythona. Sadrži detalje za postavljanje IDE-a za razvoj, popis koraka koji definiraju zadatke programiranja i primjer koda koji pokazuje kako Excel makro biblioteka pomoću Pythona. Naučit ćete pristupiti VBA knjižnici i dodavati module/kodove prema zahtjevima.
Koraci za dodavanje Excel VBA biblioteke izvornog koda pomoću Pythona
- Postavite IDE da koristi Aspose.Cells za Python putem Jave za ažuriranje VBA biblioteke
- Napravite objekt Workbook, pristupite listu i dodajte novi module
- Pristupite novostvorenom modulu koristeći vraćeni indeks tijekom izrade modula
- Postavite naziv modula
- Postavite kod za modul
- Spremite dobivenu Excel datoteku kao XLSM
Ovi koraci sažimaju postupak za pristup VBA biblioteci kodova pomoću Pythona i dodavanjem modula. Započnite proces stvaranjem ili učitavanjem radne knjige, odabirom radnog lista i dodavanjem modula i koda VBA projektu. Na kraju postavite naziv i kodove u novostvorenom modulu i spremite XLSM datoteku na disk.
Kod za ažuriranje VBA biblioteke kodova pomoću Pythona
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!!!") |
Ovaj primjer koda demonstrira postupak dodavanja modula s kodom u Excel VBA biblioteku koda pomoću Pythona. Ovaj primjer VBA koda mijenja boju pozadine svake ćelije u zelenu kada unesete paran broj u ćeliju. Možete postaviti Vba tip modula na PROCEDURAL, DOCUMENT, CLASS ili DESIGNER.
Ovaj je članak pokrio postupak dodavanja makronaredbe u Excel datoteku. Ako želite ukloniti zaštitu Excel datoteke, pogledajte članak na Kako ukloniti zaštitu Excela u Pythonu.