Excel-kalkylblad kan vara kraftfulla, men vissa uppgifter kan kräva mer programmeringskraft. Ange Python och Openpyxl-modulen.
Openpyxl tillhandahåller funktioner som låter dig arbeta med en Excel-fil från Python. Du kan använda den för att bearbeta data, skapa nya kalkylblad och till och med manipulera formler.
Biblioteket är praktiskt om du behöver automatisera samma repetitiva beräkningar över många Excel-filer. Detta kan vara fallet om du behöver hantera big data eller utföra dataanalys.
Hur man installerar Openpyxl-modulen
Installera först Openpyxl på din dator med dessa steg:
- Öppna en kommandotolk och kör följande:
pip installera openpyxl
- Om ovanstående inte fungerar kan du ladda ner modulen från Openpyxls sida för nedladdning av filer:
- Ladda ner filen openpyxl-version.tar.gz.
- Extrahera filens innehåll.
- Öppna en kommandotolk. Navigera till mappen med de extraherade filerna och kör följande kommando:
py setup.py installera
Skapa dina Excel-filer och testdata
Skapa många Excel-filer och lägg till lite testdata till dem. Om du är ny på Excel finns det massor av
verktyg som kan hjälpa dig att lära dig det.- Skapa flera Excel-filer i samma mapp. I det här scenariot finns det fem Excel-filer. Varje fil lagrar befolkningsdata för tre olika länder.
- Lägg till några testdata i varje Excel-fil. Till exempel:
Det här exemplet inkluderar uppgifter om befolkningen i många länder.
Hur man skapar Python-skriptet
Skapa Python-skriptet enligt följande:
- Skapa en ny fil som heter dataAnalysisScript.py. Öppna den med vilken bra textredigerare som helst, till exempel Visual Studio Code eller Atom.
- Lägg till följande tre importer överst i filen. "os" och "sys" hänför sig till att komma åt filer på din dator eller stänga programmet. "openpyxl" är modulen som laddades ner i föregående steg som låter dig läsa och skriva Excel-filer.
importera openpyxl
importera os
import sys - Lägg till den grundläggande strukturen för Python-skriptet nedan under importerna. Tänk på att kodstrukturen i Python beror på korrekt indrag.
# Main, start av programmet
om __namn__ == "__main__":
medan sant:
# Skriv kod här
# När koden är klar, stäng programmet.
sys.exit() - Inuti while-loopen lägger du till en uppmaning till användaren att ange sökvägen till mappen som innehåller Excel-filerna.
om __namn__ == "__main__":
medan sant:
# Ber användaren att ange filsökvägen för excel-filen.
filePath = input('Ange sökvägen till mappen där excel-filerna är lagrade: ')
# Går in i den mappen.
os.chdir (filsökväg)
# Hämtar listan över Excel-filer i mappen.
excelFiles = os.listdir('.')
Hur man läser och skriver data från Excel-filer
Använd en for-loop för att öppna, läsa, manipulera och stänga alla Excel-filer.
- Lägg till en for-loop för varje Excel-fil. Inuti slingan öppnar du varje fil.
# För varje Excel-fil
för i inom intervallet (0, len (excelFiles)):
# Det här använder openpyxl-modulen för att öppna Excel-filen.
wb = openpyxl.load_workbook (excelFiles[i])
ark = wb.aktiv - Följande kod läser ett specifikt värde från en viss cell:
cellValue = ark[f'B3'].värde
- Följande kod skriver data till cellen "A10":
Du kan också skriva till cellen genom att ange rad- och kolumnnumret. Följande kod lägger till siffran "2" i cell "F1".ark[f'A10'].värde = 56
ark.cell (rad=1, kolumn=6).värde = 2
Hur man utför inbyggda Excel-funktioner med Python-skriptet
För varje Excel-fil, beräkna summan, medelvärdet och standardavvikelsen för varje kolumn "land". Följande kod beräknar summan av alla tal för varje land:
ark[f'B11'].value = '=SUMMA(B4:B9)'
ark[f'C11'].value = '=SUMMA(C4:C9)'
ark[f'D11'].value = '=SUMMA(D4:D9)'
- '=SUMMA(B4:B9)' är Excel-beräkningen som lägger till alla tal i B-kolumnen mellan cellerna B4 och B9.
- ark[f'B11'].värde är värdet i cell B11. Programmet kommer att lagra det slutliga resultatet i denna cell.
Du kan också beräkna medelvärdet och standardavvikelsen Excel-funktioner på samma sätt som visas ovan.
ark[f'B12'].value = '=MEDEL(B4:B9)'
ark[f'C12'].value = '=MEDEL(C4:C9)'
ark[f'D12'].value = '=MEDEL(D4:D9)'
ark[f'B13'].value = '=STDEV(B4:B9)'
ark[f'C13'].value = '=STDEV(C4:C9)'
ark[f'D13'].value = '=STDEV(D4:D9)'
Hur man skriver till filen och stänger arbetsboken
Den återstående koden sparar och stänger varje arbetsbok och stänger sedan programmet.
- Inne i for-loopen, efter att ha utfört de nödvändiga Excel-funktionerna, spara ändringarna som gjorts i Excel-filen.
wb.save (excelFiles[i])
skriv ut (excelFiles[i] + ' slutfört.') - Stäng Python-skriptet utanför for-slingan.
sys.exit()
Koden i sin helhet:
# Main, start av programmet
om __namn__ == "__main__":
medan sant:
filePath = input('Ange sökvägen till mappen där excel-filerna är lagrade: ')
os.chdir (filsökväg)
excelFiles = os.listdir('.')# För varje excel-fil
för i inom intervallet (0, len (excelFiles)):wb = openpyxl.load_workbook (excelFiles[i])
ark = wb.aktiv# Utför alla nödvändiga Excel-funktioner som visas ovan här
# Spara och stäng arbetsboken
wb.save (excelFiles[i])
skriv ut (excelFiles[i] + ' slutfört.')
# När koden är klar, stäng programmet.
sys.exit()
Hur man kör Python-skriptet
- Öppna kommandotolken. Navigera till var du lagrade ditt skript. Om du lagrade ditt skript på skrivbordet skulle kommandot se ut ungefär så här:
cd C:\Users\Sharl\Desktop
- Ange följande för att köra skriptet:
python dataAnalysisScript.py
- Skriptet börjar med att be dig gå in i mappen som lagrar alla dina Excel-filer. Som ett exempel, om du lagrade den här mappen på skrivbordet, skulle filsökvägen vara:
C:\Users\Sharl\Desktop\CountryData
- Öppna en av Excel-filerna i mappen för att se de ändringar som gjorts.
Se till att ingen av Excel-filerna är öppna när du kör skriptet.
Automatisera mer med Python
Nu har du grunderna för hur du utför Excel-funktioner i ett Python-skript. Du kan nu lära dig hur du utför många fler Excel-funktioner, såväl som många andra sätt att automatisera Excel-filer. Detta inkluderar att använda ett bibliotek som Pandas för att importera data, eller till och med använda Visual Basic för att utföra repetitiva uppgifter i Excel.
Hur man skapar ett formulär för automatisk datainmatning i Excel VBA
Läs Nästa
Relaterade ämnen
- Programmering
- Programmering
- Pytonorm
- Microsoft excel
- Kalkylblad
Om författaren
Sharlene är en Tech Writer på MUO och arbetar även heltid med mjukvaruutveckling. Hon har en kandidatexamen i IT och har tidigare erfarenhet av kvalitetssäkring och universitetshandledning. Sharlene älskar att spela och spela piano.
Prenumerera på vårt nyhetsbrev
Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!
Klicka här för att prenumerera