Microsoft Excel on taulukkolaskentaohjelmisto, jota käytetään taulukkotietojen tallentamiseen ja hallintaan. Lisäksi Excelillä laskelmat voidaan suorittaa soveltamalla kaavoja tietoihin, ja tietojen visualisointeja voidaan tuottaa.Monet laskentataulukoissa tehtävät tehtävät, kuten matemaattiset operaatiot, voidaan automatisoida ohjelmoinnin avulla, ja monilla ohjelmointikielillä on moduuleja Excel-laskentataulukoiden käsittelyyn. Tässä opetusohjelmassa näytämme sinulle, kuinka Pythonin openpyxl-moduulia käytetään Excel-laskentataulukoiden lukemiseen ja muokkaamiseen.
Openpyxlin asentaminen
Ennen kuin voit asentaa openpyxl: n, sinun on asennettava pip. Pip-tiedostoa käytetään Python-pakettien asentamiseen. Suorita seuraava komento komentokehotteessa nähdäksesi, onko pip asennettu.
C: \ Users \ windows> pip-ohjeJos pip-ohjeen sisältö palautetaan, pip asennetaan; muuten siirry seuraavaan linkkiin ja lataa get-pip.py-tiedosto:
https: // bootstrap.pypa.io / get-pip.py
Suorita seuraava komento asentaaksesi pip:
C: \ Users \ windows> python get-pip.pyKun pip on asennettu, seuraavaa komentoa voidaan käyttää openpyxl: n asentamiseen.
C: \ Users \ windows> pip install openpyxlExcel-asiakirjan luominen
Tässä osassa käytämme openpyxl-moduulia Excel-asiakirjan luomiseen. Avaa ensin komentokehote kirjoittamalla hakupalkkiin cmd; kirjoita sitten
C: \ Users \ windows> pythonVoit luoda Excel-työkirjan tuomalla openpyxl-moduulin ja luomalla sitten työkirjan 'Workbook ()' -menetelmällä.
>>> # tuo openpyxl-moduulia>>> Tuo openpyxl
>>> # Työkirjan alustaminen
>>> työkirja = openpyxl.Työkirja ()
>>> # työkirjan tallentaminen esimerkkinä.xlsx '
>>> työkirja.tallenna ('esimerkki.xlsx ')
Yllä olevat komennot luovat Excel-asiakirjan, jota kutsutaan esimerkiksi.xlsx. Seuraavaksi käsittelemme tätä Excel-asiakirjaa.
Taulukoiden käsittely Excel-dokumentissa
Olemme luoneet Excel-asiakirjan nimeltä esimerkki.xlsx. Nyt käsittelemme tämän asiakirjan arkkia Pythonilla. Openpyxl-moduulissa on 'create_sheet ()' -menetelmä, jota voidaan käyttää uuden taulukon luomiseen. Tässä menetelmässä on kaksi argumenttia: hakemisto ja otsikko. Hakemisto määrittää taulukon sijoittelun käyttämällä mitä tahansa ei-negatiivista kokonaislukua (mukaan lukien 0), ja otsikko on taulukon otsikko. Luettelo kaikista työkirja-objektin taulukoista voidaan näyttää soittamalla taulukon nimiluetteloon.
>>> # tuo openpyxl-tiedostoa>>> Tuo openpyxl
>>> # nykyisen Excel-asiakirjan lataaminen työkirjaobjektiin
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Uuden arkin luominen 0. indeksissä
>>> työkirja.create_sheet (hakemisto = 0, otsikko = 'Ensimmäinen taulukko')
>>> # Kaikkien arkkien saaminen
>>> työkirja.taulukoiden nimet
['Ensimmäinen arkki', 'Arkki']
>>> # Excel-asiakirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')
Yllä olevassa koodissa loimme taulukon nimeltä Ensimmäinen arkki ja sijoitimme sen 0. indeksiin. Aikaisemmin 0. indeksissä sijaitseva arkki siirrettiin ensimmäiseen hakemistoon, kuten tulosteet osoittavat. Nyt aiomme muuttaa alkuperäisen arkin nimen Arkin toiselle arkille.
Otsikko-attribuutilla on taulukon nimi. Jos haluat nimetä taulukon uudelleen, meidän on ensin siirryttävä kyseiselle taulukolle seuraavasti.
>>> # Aktiivisen taulukon hakeminen Excel-dokumentista>>> taulukko = työkirja.aktiivinen
>>> # Arkin nimi
>>> tulosta (arkki.otsikko)
Ensimmäinen arkki >>> # Siirtyminen toiselle arkille (hakemistossa 1)
>>> työkirja.aktiivinen = 1
>>> # Aktiivisen arkin saaminen
>>> taulukko = työkirja.aktiivinen
>>> # tulostusarkin nimi
>>> tulosta (arkki.otsikko)
Arkki >>> # Arkin otsikon muuttaminen
>>> arkki.title = 'Toinen arkki'
>>> # Arkin otsikko
>>> tulosta (arkki.otsikko)
Toinen arkki
Vastaavasti voimme poistaa taulukon Excel-asiakirjasta. Openpyxl-moduuli tarjoaa remove () -menetelmän arkin poistamiseksi. Tämä menetelmä ottaa taulukon nimen poistettavaksi argumenttina ja poistaa sitten arkin. Voimme poistaa toisen arkin seuraavasti:
>>> # arkin poistaminen nimen mukaan>>> työkirja.poista (työkirja ['Toinen arkki'])
>>> # saamassa kaikki arkit
>>> työkirja.taulukoiden nimet
['Ensimmäinen arkki']
>>> # Excel-asiakirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')
Tietojen lisääminen soluihin
Toistaiseksi olemme osoittaneet, kuinka luoda tai poistaa taulukoita Excel-asiakirjassa. Nyt aiomme lisätä tietoja eri arkkien soluihin. Tässä esimerkissä meillä on asiakirjassa yksi arkki nimeltä First Sheet ja haluamme luoda vielä kaksi arkkia.
>>> # tuo openpyxl-tiedostoa>>> Tuo openpyxl
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Uuden arkin luominen 1. hakemistossa
>>> työkirja.create_sheet (hakemisto = 1, otsikko = 'Toinen arkki')
>>> # luodaan uusi taulukko 2. hakemistoon
>>> työkirja.create_sheet (hakemisto = 2, otsikko = 'Kolmas taulukko')
>>> # haetaan kaikki arkit
>>> työkirja.taulukoiden nimet
['Ensimmäinen arkki', 'Toinen arkki', 'kolmas arkki']
Meillä on nyt kolme arkkia, ja lisäämme tietoja näiden arkkien soluihin.
>>> # Ensimmäisen arkin saaminen>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # Tietojen lisääminen ensimmäisen arkin A1-soluun
>>> sheet_1 ['A1'] = 'Nimi'
>>> # Toisen arkin saaminen
>>> sheet_2 = työkirja ['toinen arkki']
>>> # Tietojen lisääminen toisen arkin A1-soluun
>>> sheet_2 ['A1'] = 'ID'
>>> # Kolmannen arkin saaminen
>>> sheet_3 = työkirja ['kolmas arkki']
>>> # Tietojen lisääminen kolmannen arkin A1-soluun
>>> sheet_3 ['A1'] = 'Arvosanat'
>>> # Excel-työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')
Excel-taulukoiden lukeminen
Openpyxl-moduuli käyttää solun arvoattribuuttia kyseisen solun tietojen tallentamiseen. Voimme lukea solun tiedot kutsumalla solun arvoattribuutin. Nyt meillä on kolme arkkia, ja jokainen arkki sisältää joitain tietoja. Voimme lukea tiedot käyttämällä seuraavia toimintoja openpyxl: ssä:
>>> # tuo openpyxl-tiedostoa>>> Tuo openpyxl
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Ensimmäisen arkin saaminen
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # Toisen arkin saaminen
>>> sheet_2 = työkirja ['toinen arkki']
>>> # Kolmannen arkin saaminen
>>> sheet_3 = työkirja ['kolmas arkki']
>>> # tulostustiedot ensimmäisen arkin A1-solusta
>>> tulosta (arkki_1 ['A1'].arvo)
Nimi
>>> # tulostustiedot toisen arkin A1-solusta
>>> tulosta (arkki_2 ['A1'].arvo)
Henkilötunnus
>>> # tulostustiedot kolmannen arkin A1-solusta
>>> tulosta (arkki_3 ['A1'].arvo)
Arvosanat
Fonttien ja värien vaihtaminen
Seuraavaksi näytämme sinulle, kuinka voit muuttaa solun fontin käyttämällä Font () -toimintoa. Tuo ensin openpyxl.tyylit -objekti. Font () -menetelmä vie luettelon argumenteista, mukaan lukien:
- nimi (merkkijono): fontin nimi
- koko (int tai kelluva): fontin koko
- alleviivattu (merkkijono): alleviivattu tyyppi
- väri (merkkijono): tekstin heksadesimaaliväri
- kursiivi (bool): onko fontti kursivoitu
- lihavoitu (bool): onko kirjasin lihavoitu
Tyylien soveltamiseksi meidän on ensin luotava objekti välittämällä kaikki parametrit Font () -metodille. Sitten valitsemme taulukon ja arkin sisällä solun, johon haluamme soveltaa tyyliä. Sitten käytämme tyyliä valittuun soluun.
>>> # tuo openpyxl-tiedostoa>>> Tuo openpyxl
>>> # fonttimenetelmän tuonti openpyxl: stä.tyylejä
>>> from openpyxl.tyylit tuovat fontin
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Tyyliobjektin luominen
>>> style = Font (nimi = 'Consolas', koko = 13, lihavoitu = True,
… Kursiivi = väärä)
>>> # Arkin valinta työkirjasta
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # Valitse solu, johon haluamme lisätä tyylejä
>>> a1 = arkki_1 ['A1']
>>> # Tyylien käyttäminen soluun
>>> a1.font = tyyli
>>> # Työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')
Reunojen käyttäminen soluihin
Voimme soveltaa reunoja Excel-taulukon soluihin käyttämällä openpyxlin Border () ja Side () -menetelmiä.tyylejä.reunamoduuli. Voimme välittää erilaisia toimintoja parametreina Border () -menetelmälle. Seuraavassa on joitain toimintoja, jotka välitetään parametreina Border () -metodille reunan mittojen määrittämiseksi.
- vasemmalle: aseta reuna solun vasemmalle puolelle
- oikein: aseta reuna solun oikealle puolelle
- alkuun: käytä reunaa solun yläosaan
- pohjassa: käytä reunaa solun alaosaan
Nämä toiminnot käyttävät tyylimääritteitä parametreina. Style-määritelmä määrittää reunan tyylin (esim.g., kiinteä, katkoviiva). Tyyliparametreillä voi olla jokin seuraavista arvoista.
- kaksinkertainen: kaksirivinen raja
- katkoviiva: katkoviiva
- ohut: ohut reunus
- keskipitkällä: keskiraja
- mediumDashDot: katkoviiva ja katkoviiva, keskipaino
- paksu: paksu reunus
- dashDot: katkoviiva ja katkoviiva
- hiukset: erittäin ohut reunus
- pisteviiva: katkoviiva
Nyt sovellamme erityyppisiä rajoja laskentataulukoiden eri soluihin. Ensin valitsemme solut ja sitten määritämme reunatyylit ja käytämme näitä tyylejä eri soluihin.
>>> # tuo openpyxl-tiedostoa>>> Tuo openpyxl
>>> # Border- ja Side-luokkien tuonti
>>> from openpyxl.tyylejä.reunat tuonti Border, Side
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # Arkin valinta
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # Eri solujen valinta taulukosta
>>> solu_1 = taulukko_1 ['A1']
>>> solu_2 = arkki_1 ['B2']
>>> solu_3 = arkki_1 ['C3']
>>> # Eri reunatyyppien määrittely
>>> style_1 = Border (ala = Side (style = 'pisteviiva'))
>>> style_2 = Border (oikea = Side (style = 'slim'))
>>> style_3 = Border (ylhäältä = Side (style = 'dashDot'))
>>> # reunatyylien soveltaminen soluihin
>>> solu_1.reunus = tyyli_1
>>> solu_2.reunus = tyyli_2
>>> solu_3.reunus = tyyli_3
>>> # Työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')
Rivin ja sarakkeen mittojen säätäminen
Excel-asiakirjan rivin korkeutta ja sarakkeen leveyttä voidaan säätää myös Pythonilla. Openpyxl-moduulissa on kaksi sisäänrakennettua menetelmää, joita voidaan käyttää näiden toimintojen suorittamiseen. Ensin valitaan arkki, jonka haluamme muuttaa sarakkeen leveyttä tai rivin korkeutta. Sitten sovellamme menetelmää tiettyyn riviin tai sarakkeeseen.
>>> # tuo openpyxl-tiedostoa>>> Tuo openpyxl
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # valintataulukko
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # ensimmäisen rivin korkeuden muuttaminen
>>> arkki_1.rivimitat [1].korkeus = 50
>>> # Työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')
Vastaavasti voimme muuttaa sarakkeen leveyttä seuraavalla koodilla
>>> # taulukon valinta Excel-työkirjasta>>> sheet_2 = työkirja ['toinen arkki']
>>> # sarakkeen leveyden muuttaminen
>>> arkki_2.sarakkeen mitat ['A'].leveys = 50
>>> # Työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')
Yllä oleva koodi muuttaa ensimmäisen rivin korkeuden 50 pt: ksi ja sarakkeen A leveyden 50 pt: ksi.
Solujen yhdistäminen ja purkautuminen
Kun työskentelemme Excel-laskentataulukoiden kanssa, meidän on usein yhdistettävä ja purettava solut. Solujen yhdistämiseksi Pythonissa voidaan käyttää yksinkertaista openpyxl-pohjaista toimintoa. Openpyxl-moduuli tarjoaa merge_cells () -menetelmän, jota voidaan käyttää solujen yhdistämiseen Excelissä. Uusi solu saa vasemman yläkulman solun nimen. Esimerkiksi, jos haluamme yhdistää solut solusta A1 soluun B2, uudelle muodostetulle solulle viitataan nimellä A1. Jos haluat yhdistää solut openpyxl: n avulla, valitsemme ensin taulukon ja sitten sovellamme merge_cells () -menetelmää taulukkoon.
>>> # tuo openpyxl-moduulia>>> Tuo openpyxl
>>> # ladataan työkirjaa
>>> työkirja = openpyxl.load_workbook ('esimerkki.xlsx ')
>>> # ensimmäisen arkin valitseminen Excel-työkirjasta
>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # solujen yhdistäminen A1: stä B2: een taulukossa 1
>>> arkki_1.merge_cells ('A1: B2')
>>> # työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')
Vastaavasti unmerge_cells () -menetelmää voidaan käyttää solujen purkamiseen Excel-laskentataulukossa. Seuraavaa koodia voidaan käyttää solujen purkamiseen:
>>> # taulukon valitseminen työkirjasta>>> sheet_1 = työkirja ['Ensimmäinen taulukko']
>>> # sulkeutumatonta solua A1: stä B2: een
>>> arkki_1.unmerge_cells ('A1: B2')
>>> # työkirjan tallentaminen
>>> työkirja.tallenna ('esimerkki.xlsx ')
Johtopäätös
Excel-laskentataulukoita käytetään yleisesti tietojen käsittelyyn. Tällaiset tehtävät voivat kuitenkin olla yksitoikkoisia. Siksi tällaisissa tapauksissa ohjelmointia voidaan käyttää laskentataulukoiden käsittelyn automatisointiin.
Tässä artikkelissa keskusteltiin joistakin Pythonin openpyxl-moduulin hyödyllisistä toiminnoista. Esitimme sinulle, miten luodaan, luetaan, poistetaan ja muokataan Excel-laskentataulukoita, miten muutetaan tyyliä, käytetään kirjasinta, reunoja ja solujen mittoja sekä miten solut yhdistetään ja yhdistetään. Käyttämällä näitä toimintoja voit automatisoida monia laskentataulukoiden manipulointitehtäviä Pythonilla.