Kaip sklandžiai integruoti Python į Excel naudojant PyXLL

Kaip sklandžiai integruoti Python į Excel naudojant PyXLL
Tokie skaitytojai kaip jūs padeda palaikyti MUO. Kai perkate naudodami nuorodas mūsų svetainėje, galime uždirbti filialų komisinius. Skaityti daugiau.

PyXLL yra įrankis, mažinantis atotrūkį tarp Microsoft Excel ir Python. Tai leidžia sklandžiai integruoti Python kodą ir funkcijas į „Excel“ skaičiuokles. Naudojant PyXLL, „Excel“ tampa platforma, skirta „Python“ bibliotekoms ir galimybėms panaudoti.





PyXLL veikia kaip „Excel“ priedas. Jį galite naudoti norėdami rašyti Python funkcijas ir makrokomandas tiesiogiai „Excel“ VBA aplinkoje. Tada PyXLL veikia kaip vertėjas ir paleidžia kodą „Excel“ ląstelėse, atverdamas daugybę galimybių. Kai kurie iš jų apima sudėtingų užduočių automatizavimą, išplėstinę duomenų analizę ir duomenų vizualizavimą.





PyXLL apžvalga

PyXLL veikia paleisdamas Python interpretatorių „Excel“ procese. Tai suteikia jūsų Python kodui, veikiančiam PyXLL, tiesioginę prieigą prie „Excel“ duomenų ir objektų. Įrankis parašytas C++ ir naudoja tą pačią pagrindinę technologiją kaip ir Excel. Tai reiškia, kad Python kodas, veikiantis PyXLL, paprastai yra daug greitesnis nei Excel VBA kodas .





Diegimas ir sąranka

Norėdami įdiegti PyXLL, eikite į PyXLL svetainė ir atsisiųskite priedą. Įsitikinkite, kad pasirinkta „Python“ ir „Excel“ versija atitinka įdiegtas jūsų sistemoje. „PyXLL“ galima tik „Excel“ „Windows“ versijai.

  PyXLL atsisiuntimo puslapis

Kai atsisiuntimas bus baigtas, atidarykite komandų eilutę ir paleiskite šią komandą:



 pip install pyxll

Tau reikia ar jūsų sistemoje įdiegtas Pip kad būtų paleista aukščiau nurodyta komanda. Tada naudokite PyXLL paketą, kad įdiegtumėte PyXLL priedą:

 pyxll install 

Diegimo programa paklaus, ar atsisiuntėte priedą. Įveskite taip, tada nurodykite ZIP failo, kuriame yra priedas, kelią. Tada vykdykite ekrane pateikiamas instrukcijas, kad užbaigtumėte diegimą.





Darbo su PyXLL pradžia

Įdiegę papildinį paleiskite „Excel“. Prieš jį paleidžiant, pasirodys raginimas, kuriame bus prašoma tai padaryti Pradėti bandymą arba Pirkti dabar . Bandomoji versija nustos galioti po trisdešimties dienų, o tada turėsite įsigyti licenciją, kad galėtumėte toliau naudoti PyXLL.

Kaip padidinti nuotraukų dpi „Photoshop“
  PyXLL versijos raginimas

Spustelėkite ant Pradėti bandymą mygtuką. Tai paleis „Excel“ su įdiegtu priedu.





Ant „PyXLL“ pavyzdys , spustelėkite Apie PyXLL mygtuką. Tai parodys kelią, kuriuo įdiegėte priedą, kartu su keliais į konfigūraciją ir žurnalo failus.

  PyXLL apie raginimą programoje „Excel“.

Kelias, kuriame yra konfigūracijos failas, yra svarbus, nes vėliau turėsite jį redaguoti, todėl pasižymėkite jį.

„Python“ funkcijų atskleidimas „Excel“.

Jei norite, kad „Python“ funkcija būtų rodoma „Excel“ kaip vartotojo apibrėžta funkcija (UDF), naudokite @xl_func dekoratorius. Šis dekoratorius nurodo PyXLL užregistruoti funkciją „Excel“, kad ji būtų prieinama vartotojams.

Pavyzdžiui, atskleisti Python Fibonacci () funkcija Excel kaip UDF, galite naudoti @xl_func dekoratorius taip:

 from pyxll import xl_func 

@xl_func
def fibonacci(n):
  """
  This is a Python function that calculates the Fibonacci sequence.
  """
  if n < 0:
    raise ValueError("n must be non-negative")
  elif n == 0 or n == 1:
    return n
  else:
    return fibonacci(n - 1) + fibonacci(n - 2)

Išsaugokite šį kodą su plėtiniu .py ir atkreipkite dėmesį į aplanko, kuriame įrašote failą, kelią.

Dabar atidarykite PyXLL konfigūracijos failą redaktoriuje ir slinkite žemyn iki eilutės, prasidedančios „pythonpath“. Šis nustatymas paprastai yra aplankų, kuriuose PyXLL ieškos Python modulių, sąrašas. Pridėkite kelią į aplanką, kuriame yra Fibonacci funkcijos šaltinio kodas.

  PyXLL pythonpath aplankų sąrašas

Tada slinkite žemyn iki „moduliai“ ir pridėkite savo modulį. Pavyzdžiui, jei failą išsaugojote kaip fibonacci.py , pridėkite pavadinimą 'fibonačis' į sąrašą:

  PyXLL konfigūracijos failų modulių sąrašas

Tai parodys modulio funkcijas, kurios naudoja @xl_func dekoratorius į Excel. Tada grįžkite į „Excel“ ir „ „PyXLL“ pavyzdys , spustelėkite Iš naujo įkelkite PyXLL mygtuką, kad būtų sinchronizuojami konfigūracijos failo pakeitimai. Tada galite iškviesti Python Fibonacci veikia kaip bet kuri kita Excel formulė.

  Python funkcijos Excel

Galite sukurti tiek funkcijų, kiek jums reikia, ir pateikti jas „Excel“ tokiu pat būdu.

Duomenų perdavimas tarp Excel ir Python

PyXLL palaiko išorinių Python bibliotekų, tokių kaip Pandas, naudojimą. Tai leidžia perduoti duomenis iš šių bibliotekų į Python ir atvirkščiai. Pavyzdžiui, galite naudokite Pandas, kad sukurtumėte atsitiktinį duomenų rėmelį ir perduokite į Excel. Įsitikinkite, kad Pandas įdiegtas jūsų sistemoje, tada išbandykite šį kodą:

 from pyxll import xl_func 
import pandas as pd
import numpy as np

@xl_func("int rows, int columns: dataframe<index=True>", auto_resize=True)
def random_dataframe(rows, columns):
   data = np.random.rand(rows, columns)
   column_names = [chr(ord('A') + x) for x in range(columns)]
   return pd.DataFrame(data, columns=column_names)

Turėtumėte atlikti tą patį procesą, kad šis modulis ir jo funkcijos būtų rodomi „Excel“. Tada pabandykite paskambinti random_dataframe veikia taip, kaip ir kita Excel formulė:

 =random_dataframe(10,5)

Galite keisti eilučių ir stulpelių skaičių, kaip norite.

  Duomenų rėmelis programoje „Excel“, kurį sukūrė „Pandas“, naudojant PyXLL

Tokiu pat būdu galite perduoti iš anksto nustatytus duomenų rėmelius į „Excel“. Taip pat galima importuoti Excel duomenis į Python scenarijų naudodami Pandas .

PyXLL apribojimai

  • „Windows“ ir „Excel“ suderinamumas: „PyXLL“ pirmiausia sukurta „Windows“ ir veikia su „Microsoft Excel“ sistemoje „Windows“. Jis gali turėti ribotų funkcijų arba suderinamumo problemų ne Windows platformose, nes yra optimizuotas Windows aplinkai.
  • Diegimas: norint įdiegti PyXLL pagrįstas skaičiuokles galutiniams vartotojams, jie turi turėti įdiegtą Python su minimaliomis priklausomybėmis arba Python vykdymo laiką, susietą su skaičiuokle. Tai reiškia, kad vartotojai, norintys naudoti PyXLL maitinamas skaičiuokles, savo kompiuteriuose turi turėti įdiegtą Python.
  • Mokymosi kreivė: norint efektyviai naudoti PyXLL, reikia šiek tiek žinių apie Python programavimą ir susipažinti su Excel objekto modeliu. Naudotojams, kurie nėra susipažinę su Python ar Excel objekto modeliu, gali tekti skirti laiko išmokti šias sąvokas, kad galėtų visiškai išnaudoti PyXLL galimybes.
  • Licencijos kaina: PyXLL yra komercinis produktas, todėl, atsižvelgiant į jūsų naudojimą ir reikalavimus, su jo naudojimu gali būti susijusių licencijavimo išlaidų. PyXLL naudojimo kaina priklauso nuo tokių veiksnių kaip vartotojų skaičius, diegimo mastas ir licencijavimo sutartys.

Ar vis tiek turėtumėte naudoti „Excel“ funkcijas?

Tai priklauso nuo to, ką norite pasiekti. Visada prasminga naudoti vietines „Excel“ funkcijas, kai jos yra prieinamos. Tačiau sudėtingesnėms užduotims, kurių negali atlikti „Excel“ integruotos funkcijos, PyXLL yra puikus sprendimas.

Pandas biblioteka puikiai papildo PyXLL savo analitinėmis galimybėmis ir stipriu duomenų apdorojimo palaikymu.

ką reiškia feisbuke