Open Source Python API til Google Sheets
Python-bibliotek, der gør det nemt at kalde Python fra Excel og omvendt.
Xlwings er en open source python API til at manipulere Excel-filformat. Ved at bruge API'et kan du automatisere excel fra python til at producere rapporter, skrive UDF'er (brugerdefinerede funktioner), skrive makroer og fjernstyre Excel. Desuden tillader API'et at manipulere datastrukturer som celler, lister, områder, NumPy-arrays, panda-datarammer og pandaserier.
Xlwings kræver installation af Microsoft Excel, så alt virker på Windows og macOS bortset fra at UDF'erne kun virker på Windows.
Kom godt i gang med Xlwings
Du skal have Python 3.5 eller højere installeret på dit system for at køre xlwings problemfrit. Den anbefalede måde at installere via PIP. Brug venligst følgende kommando.
Installer Xlwings via PIP Command
pip install xlwings
Installer Xlwings via Conda
conda install xlwings
Interager med Excel fra Python
Xlwings API gør det muligt at manipulere Microsoft-regneark ved hjælp af Python. Ved at bruge API'et kan du oprette forbindelse til en eksisterende projektmappe eller oprette en ny ved hjælp af xlwings.Book()-metoden. Du kan læse/skrive værdier til og fra intervaller, udvide intervaller, nemt konvertere datatyper. Desuden kan du tilføje Matplotlib & Plotly-diagram som billeder i dine Excel-projektmapper.
Få dimensioner af Excel-intervaller dynamisk via Python
sheet = xw.Book().sheets[0]
sheet['A1'].value = [[1,2], [3,4]]
range1 = sheet['A1'].expand('table') # or just .expand()
range2 = sheet['A1'].options(expand='table')
range1.value
[[1.0, 2.0], [3.0, 4.0]]
range2.value
[[1.0, 2.0], [3.0, 4.0]]
sheet['A3'].value = [5, 6]
range1.value
[[1.0, 2.0], [3.0, 4.0]]
range2.value
Ring til Python fra Excel
Open Source regnearksbiblioteket Xlwings giver softwareudviklere mulighed for at kommunikere med Python via Excel. Du kan kalde python-funktioner inde i din excel enten ved at bruge Kør-knappen i Xlwings Excel-tilføjelsesprogram eller ved at bruge RunPython VBA-funktionen. Det gode ved at bruge Excel Add-In er, at du ikke har brug for, at dine projektmapper er makroaktiverede, og du kan gemme det som xlsx.
Brug Python Script til at indsætte QR-koder i Microsoft Excel
import tempfile
import segno
import xlwings as xw
# Update this with the name of your workbook
book = xw.Book('qr.xlsx')
sheet = xw.sheets[0]
# Update this with the starting cell of your URLs
start_cell = sheet['A1']
urls = start_cell.options(expand='down', ndim=1).value
# Loop through each URL and generate the QR code
for ix, url in enumerate(urls):
# Generate the QR code
qr = segno.make(url)
with tempfile.TemporaryDirectory() as td:
# Save the QR code as a temporary svg file. If you are on macOS, use pdf
# instead and if you don't have Microsoft 365, you may have to use png
filepath = f'{td}/qr.svg'
qr.save(filepath, scale=5, border=0, finder_dark='#15a43a')
# Insert the QR code to the right of the URL
destination_cell = start_cell.offset(row_offset=ix, column_offset=1)
sheet.pictures.add(filepath,
left=destination_cell.left,
top=destination_cell.top)
Brugerdefinerede funktioner (UDF'er) i Excel ved hjælp af Python
Xlwings bibliotek giver udviklere mulighed for at skrive brugerdefinerede funktioner (UDF'er) inde i Microsoft Excel-filformatet programmatisk. I øjeblikket er UDF'er kun tilgængelige på Windows. API'et tillader brug af simple funktioner, antal array-dimensioner, dynamiske array-formler, arrya-formler med NumPy og mere.
Sådan kalder du makroer via RunPython i Microsoft Excel
import xlwings as xw
@xw.sub
def my_macro():
"""Writes the name of the Workbook into Range("A1") of Sheet 1"""
wb = xw.Book.caller()
wb.sheets[0].range('A1').value = wb.name