Excel-laskentataulukot voivat olla tehokkaita, mutta jotkin tehtävät voivat vaatia enemmän ohjelmointitehoa. Kirjoita Python ja Openpyxl-moduuli.
Openpyxl tarjoaa toimintoja, joiden avulla voit työskennellä Pythonin Excel-tiedoston kanssa. Voit käyttää sitä tietojen käsittelyyn, uusien laskentataulukoiden luomiseen ja jopa kaavojen käsittelyyn.
Kirjasto on kätevä, jos haluat automatisoida samat toistuvat laskutoimitukset useissa Excel-tiedostoissa. Näin voi olla, jos sinun on käsiteltävä big dataa tai analysoitava dataa.
Kuinka asentaa Openpyxl-moduuli
Asenna ensin Openpyxl tietokoneellesi seuraavasti:
- Avaa komentokehote ja suorita seuraava:
pip asennus openpyxl
- Jos yllä oleva ei auta, voit ladata moduulin osoitteesta Openpyxlin Lataa tiedostot -sivu:
- Lataa tiedosto openpyxl-version.tar.gz.
- Pura tiedoston sisältö.
- Avaa komentokehote. Siirry purettujen tiedostojen kansioon ja suorita seuraava komento:
py setup.py install
Luo Excel-tiedostot ja testitiedot
Luo useita Excel-tiedostoja ja lisää niihin testitietoja. Jos olet uusi Excelissä, on olemassa monia
työkaluja, jotka voivat auttaa sinua oppimaan sen.- Luo useita Excel-tiedostoja samaan kansioon. Tässä skenaariossa on viisi Excel-tiedostoa. Jokainen tiedosto tallentaa väestötiedot kolmesta eri maasta.
- Lisää jokaiseen Excel-tiedostoon testitietoja. Esimerkiksi:
Tämä esimerkki sisältää tietoja monien maiden väestöstä.
Python-komentosarjan luominen
Luo Python-skripti seuraavasti:
- Luo uusi tiedosto nimeltä dataAnalysisScript.py. Avaa se millä tahansa hyvällä tekstieditorilla, esim Visual Studio Code tai Atom.
- Lisää seuraavat kolme tuontia tiedoston yläosaan. "os" ja "sys" liittyvät tietokoneesi tiedostojen käyttöön tai ohjelman sulkemiseen. "openpyxl" on edellisessä vaiheessa ladattu moduuli, jonka avulla voit lukea ja kirjoittaa Excel-tiedostoja.
tuoda openpyxl
tuonti os
tuonti sys - Lisää tuontien alle Python-skriptin perusrakenne. Muista, että Pythonin koodirakenne riippuu oikeasta sisennyksestä.
# Pää, ohjelman alku
if __name__ == "__main__":
kun taas Totta:
# Kirjoita koodi tähän
# Kun koodi on valmis, sulje ohjelma.
sys.exit() - Lisää while-silmukan sisään kehote, jossa käyttäjä kirjoittaa polun kansioon, joka sisältää Excel-tiedostot.
if __name__ == "__main__":
kun taas Totta:
# Pyytää käyttäjää syöttämään excel-tiedoston tiedostopolun.
filePath = input('Anna sen kansion polku, johon excel-tiedostot on tallennettu:')
# Menee kansioon.
os.chdir (filePath)
# Hakee luettelon kansion sisällä olevista Excel-tiedostoista.
excelFiles = os.listdir('.')
Kuinka lukea ja kirjoittaa tietoja Excel-tiedostoista
Käytä for-silmukkaa jokaisen Excel-tiedoston avaamiseen, lukemiseen, käsittelemiseen ja sulkemiseen.
- Lisää for-silmukka jokaiselle Excel-tiedostolle. Avaa jokainen tiedosto silmukan sisällä.
# Jokaiselle Excel-tiedostolle
i: lle alueella (0, len (excelFiles)):
# Tämä käyttää openpyxl-moduulia Excel-tiedoston avaamiseen.
wb = openpyxl.load_workbook (excelFiles[i])
arkki = wb.active - Seuraava koodi lukee tietyn arvon tietystä solusta:
soluarvo = taulukko[f'B3'].arvo
- Seuraava koodi kirjoittaa tiedot soluun "A10":
Voit myös kirjoittaa soluun määrittämällä rivin ja sarakkeen numeron. Seuraava koodi lisää numeron "2" soluun "F1".arkki[f'A10'].arvo = 56
taulukko.solu (rivi=1, sarake=6).arvo = 2
Sisäänrakennettujen Excel-toimintojen suorittaminen Python-komentosarjan avulla
Laske kunkin Excel-tiedoston summa, keskiarvo ja keskihajonta kullekin "maa"-sarakkeelle. Seuraava koodi laskee kunkin maan kaikkien lukujen summan:
taulukko[f'B11'].value = '=SUMMA(B4:B9)'
taulukko[f'C11'].value = '=SUMMA(C4:C9)'
taulukko[f'D11'].value = '=SUMMA(D4:D9)'
- '=SUM(B4:B9)' on Excel-laskelma, joka lisää kaikki B-sarakkeen luvut solujen B4 ja B9 väliin.
- taulukko[f'B11'].arvo on solun B11 arvo. Ohjelma tallentaa lopputuloksen tähän soluun.
Voit myös laskea keskiarvon ja keskihajonnan Excel-funktiot samalla tavalla kuin yllä.
taulukko[f'B12'].value = '=KESKUSRI(B4:B9)'
taulukko[f'C12'].value = '=KESKIKORIA(C4:C9)'
taulukko[f'D12'].value = '=KESKIKORIA(D4:D9)'
taulukko[f'B13'].arvo = '=STDEV(B4:B9)'
taulukko[f'C13'].value = '=STDEV(C4:C9)'
taulukko[f'D13'].value = '=STDEV(D4:D9)'
Kuinka kirjoittaa tiedostoon ja sulkea työkirja
Jäljellä oleva koodi tallentaa ja sulkee jokaisen työkirjan ja sulkee sitten ohjelman.
- Tallenna for-silmukan sisällä Excel-tiedostoon tehdyt muutokset suoritettuasi tarvittavat Excel-toiminnot.
wb.save (excelFiles[i])
tulosta (excelFiles[i] + 'valmis.') - Sulje Python-skripti for-silmukan ulkopuolella.
sys.exit()
Koodi kokonaisuudessaan:
# Pää, ohjelman alku
if __name__ == "__main__":
kun taas Totta:
filePath = input('Anna sen kansion polku, johon excel-tiedostot on tallennettu:')
os.chdir (filePath)
excelFiles = os.listdir('.')# Jokaiselle Excel-tiedostolle
i: lle alueella (0, len (excelFiles)):wb = openpyxl.load_workbook (excelFiles[i])
arkki = wb.active# Suorita kaikki vaaditut Excel-toiminnot yllä kuvatulla tavalla
# Tallenna ja sulje työkirja
wb.save (excelFiles[i])
tulosta (excelFiles[i] + 'valmis.')
# Kun koodi on valmis, sulje ohjelma.
sys.exit()
Python-komentosarjan suorittaminen
- Avaa komentokehote. Siirry kohtaan, johon olet tallentanut skriptin. Jos tallensit skriptin työpöydälle, komento näyttäisi tältä:
cd C:\Users\Sharl\Desktop
- Kirjoita seuraava komentosarjan suorittamiseksi:
python dataAnalysisScript.py
- Skripti alkaa pyytämällä sinua syöttämään kansion, joka tallentaa kaikki Excel-tiedostosi. Esimerkiksi, jos olet tallentanut tämän kansion työpöydälle, tiedostopolku olisi:
C:\Users\Sharl\Desktop\CountryData
- Avaa jokin kansion Excel-tiedostoista nähdäksesi tehdyt muutokset.
Varmista, että mikään Excel-tiedostoista ei ole auki, kun suoritat komentosarjan.
Automatisoi enemmän Pythonilla
Nyt sinulla on perusasiat Excel-toimintojen suorittamisesta Python-skriptin sisällä. Voit nyt oppia suorittamaan monia muita Excel-toimintoja sekä monia muita tapoja automatisoida Excel-tiedostoja. Tämä sisältää kirjaston, kuten Pandasin, käytön tietojen tuomiseen tai jopa Visual Basicin käyttämisen toistuvien tehtävien suorittamiseen Excelissä.
Kuinka luoda automaattinen tietojen syöttölomake Excel VBA: ssa
Lue Seuraava
Liittyvät aiheet
- Ohjelmointi
- Ohjelmointi
- Python
- Microsoft Excel
- Laskentataulukko
Kirjailijasta
Sharlene on tekninen kirjoittaja MUO: ssa ja työskentelee myös kokopäiväisesti ohjelmistokehityksessä. Hän on koulutukseltaan tietotekniikan kandidaatti ja hänellä on aikaisempaa kokemusta laadunvarmistuksesta ja yliopistotutoroinnista. Sharlene rakastaa pelaamista ja pianon soittamista.
tilaa uutiskirjeemme
Liity uutiskirjeemme saadaksesi teknisiä vinkkejä, arvosteluja, ilmaisia e-kirjoja ja eksklusiivisia tarjouksia!
Klikkaa tästä tilataksesi