Excel-regneark kan være kraftfulde, men nogle opgaver kan kræve mere programmeringskraft. Indtast Python og Openpyxl-modulet.
Openpyxl har funktioner, der giver dig mulighed for at arbejde med en Excel-fil fra Python. Du kan bruge det til at behandle data, oprette nye regneark og endda manipulere formler.
Biblioteket er praktisk, hvis du skal automatisere de samme gentagne beregninger over mange Excel-filer. Dette kan være tilfældet, hvis du skal beskæftige dig med big data eller udføre dataanalyse.
Sådan installeres Openpyxl-modulet
Installer først Openpyxl på din computer med disse trin:
- Åbn en kommandoprompt og kør følgende:
pip installer openpyxl
- Hvis ovenstående ikke virker, kan du downloade modulet fra Openpyxls side for download af filer:
- Download filen openpyxl-version.tar.gz.
- Udpak filens indhold.
- Åbn en kommandoprompt. Naviger til mappen med de udpakkede filer og kør følgende kommando:
py setup.py install
Opret dine Excel-filer og testdata
Opret mange Excel-filer og tilføj nogle testdata til dem. Hvis du er ny til Excel, er der masser af
værktøjer, der kan hjælpe dig med at lære det.- Opret flere Excel-filer i samme mappe. I dette scenarie er der fem Excel-filer. Hver fil gemmer befolkningsdata for tre forskellige lande.
- Tilføj nogle testdata i hver Excel-fil. For eksempel:
Dette eksempel omfatter data vedrørende befolkningen i mange lande.
Sådan opretter du Python-scriptet
Opret Python-scriptet som følger:
- Opret en ny fil kaldet dataAnalysisScript.py. Åbn det ved hjælp af en hvilken som helst god teksteditor, f.eks Visual Studio Code eller Atom.
- Tilføj følgende tre importer øverst i filen. "os" og "sys" vedrører adgang til filer på din computer eller lukning af programmet. "openpyxl" er det modul, der blev downloadet i det foregående trin, og som giver dig mulighed for at læse og skrive Excel-filer.
importer openpyxl
import os
import sys - Tilføj den grundlæggende struktur for Python-scriptet nedenfor under importen. Husk, at kodestrukturen i Python afhænger af korrekt indrykning.
# Main, start af programmet
hvis __navn__ == "__main__":
mens det er sandt:
# Skriv kode her
# Luk programmet, når koden er færdig.
sys.exit() - Inde i while-løkken skal du tilføje en prompt til brugeren om at indtaste stien til mappen, der indeholder Excel-filerne.
hvis __navn__ == "__main__":
mens det er sandt:
# Beder brugeren om at indtaste filstien til excel-filen.
filePath = input('Indtast venligst stien til den mappe, hvor excel-filerne er gemt: ')
# Går ind i den mappe.
os.chdir (filsti)
# Henter listen over Excel-filer inde i mappen.
excelFiles = os.listdir('.')
Sådan læser og skriver du data fra Excel-filer
Brug en for-løkke til at åbne, læse, manipulere og lukke hver af Excel-filerne.
- Tilføj en for-løkke for hver Excel-fil. Åbn hver fil inde i løkken.
# For hver Excel-fil
for i inden for rækkevidde (0, len (excelFiles)):
# Dette bruger openpyxl-modulet til at åbne Excel-filen.
wb = openpyxl.load_workbook (excelFiles[i])
ark = wb.aktiv - Følgende kode læser en bestemt værdi fra en bestemt celle:
cellValue = ark[f'B3'].værdi
- Følgende kode skriver data til cellen "A10":
Du kan også skrive til cellen ved at angive række- og kolonnenummeret. Den følgende kode tilføjer tallet "2" til celle "F1".ark[f'A10'].værdi = 56
ark.celle (række=1, kolonne=6).værdi = 2
Sådan udføres indbyggede Excel-funktioner ved hjælp af Python-scriptet
For hver Excel-fil skal du beregne sum, gennemsnit og standardafvigelse for hver "land"-kolonne. Følgende kode beregner summen af alle tal for hvert land:
ark[f'B11'].value = '=SUM(B4:B9)'
ark[f'C11'].value = '=SUM(C4:C9)'
ark[f'D11'].value = '=SUM(D4:D9)'
- '=SUM(B4:B9)' er Excel-beregningen, der tilføjer alle tal i B-kolonnen mellem cellerne B4 og B9.
- ark[f'B11'].værdi er værdien i celle B11. Programmet gemmer det endelige resultat i denne celle.
Du kan også beregne gennemsnittet og standardafvigelsen i Excel-funktionerne på samme måde som vist ovenfor.
ark[f'B12'].value = '=AVERAGE(B4:B9)'
ark[f'C12'].value = '=AVERAGE(C4:C9)'
ark[f'D12'].value = '=MIDDEL(D4:D9)'
ark[f'B13'].value = '=STDEV(B4:B9)'
ark[f'C13'].value = '=STDEV(C4:C9)'
ark[f'D13'].value = '=STDEV(D4:D9)'
Sådan skriver du til filen og lukker projektmappen
Den resterende kode gemmer og lukker hver projektmappe og lukker derefter programmet.
- Inde i for-løkken, efter at have udført de nødvendige Excel-funktioner, skal du gemme ændringerne i Excel-filen.
wb.save (excelFiles[i])
print (excelFiles[i] + ' gennemført.') - Uden for for-løkken skal du lukke Python-scriptet.
sys.exit()
Koden i alt:
# Main, start af programmet
hvis __navn__ == "__main__":
mens det er sandt:
filePath = input('Indtast venligst stien til den mappe, hvor excel-filerne er gemt: ')
os.chdir (filsti)
excelFiles = os.listdir('.')# For hver excel-fil
for i inden for rækkevidde (0, len (excelFiles)):wb = openpyxl.load_workbook (excelFiles[i])
ark = wb.aktiv# Udfør alle nødvendige Excel-funktioner som vist ovenfor her
# Gem og luk projektmappen
wb.save (excelFiles[i])
print (excelFiles[i] + ' gennemført.')
# Luk programmet, når koden er færdig.
sys.exit()
Sådan kører du Python-scriptet
- Åbn kommandoprompten. Naviger til det sted, hvor du gemte dit script. Hvis du gemte dit script på skrivebordet, ville kommandoen se sådan ud:
cd C:\Users\Sharl\Desktop
- Indtast følgende for at køre scriptet:
python dataAnalysisScript.py
- Scriptet starter med at bede dig om at indtaste mappen, der gemmer alle dine Excel-filer. For eksempel, hvis du har gemt denne mappe på skrivebordet, vil filstien være:
C:\Users\Sharl\Desktop\CountryData
- Åbn en af Excel-filerne i mappen for at se ændringerne.
Sørg for, at ingen af Excel-filerne er åbne, når du kører scriptet.
Automatisering af mere med Python
Nu har du det grundlæggende i, hvordan du udfører Excel-funktioner i et Python-script. Du kan nu lære, hvordan du udfører mange flere Excel-funktioner, såvel som mange andre måder at automatisere Excel-filer på. Dette inkluderer brug af et bibliotek som Pandas til at importere data eller endda brug af Visual Basic til at udføre gentagne opgaver i Excel.
Sådan opretter du en automatisk dataindtastningsformular i Excel VBA
Læs Næste
Relaterede emner
- Programmering
- Programmering
- Python
- Microsoft Excel
- Regneark
Om forfatteren

Sharlene er en Tech Writer hos MUO og arbejder også fuld tid med softwareudvikling. Hun har en bachelor i IT og har tidligere erfaring med kvalitetssikring og universitetsvejledning. Sharlene elsker at spille og spille klaver.
Abonner på vores nyhedsbrev
Tilmeld dig vores nyhedsbrev for tekniske tips, anmeldelser, gratis e-bøger og eksklusive tilbud!
Klik her for at abonnere