Paano Mag-integrate ng Python Sa Excel Gamit ang PyXLL

Paano Mag-integrate ng Python Sa Excel Gamit ang PyXLL
Ang mga mambabasang tulad mo ay tumutulong sa pagsuporta sa MUO. Kapag bumili ka gamit ang mga link sa aming site, maaari kaming makakuha ng isang affiliate na komisyon. Magbasa pa.

Ang PyXLL ay isang tool na tumutulay sa pagitan ng Microsoft Excel at Python. Hinahayaan ka nitong maayos na isama ang Python code at functionality sa mga spreadsheet ng Excel. Sa PyXLL, ang Excel ay nagiging isang plataporma para sa paggamit ng mga aklatan at kakayahan ng Python.





Ang PyXLL ay nagsisilbing Excel add-in. Magagamit mo ito upang direktang sumulat ng mga function at macro sa Python sa kapaligiran ng VBA ng Excel. Ang PyXLL pagkatapos ay gumaganap bilang interpreter at pinapatakbo ang code sa loob ng mga cell ng Excel, na nagbubukas ng maraming posibilidad. Kabilang sa ilan sa mga ito ang pag-automate ng mga kumplikadong gawain, advanced na pagsusuri ng data, at visualization ng data.





Isang Pangkalahatang-ideya ng PyXLL

Gumagana ang PyXLL sa pamamagitan ng pagpapatakbo ng isang Python interpreter sa loob ng proseso ng Excel. Nagbibigay ito sa iyong Python code, na tumatakbo sa PyXLL, ng direktang pag-access sa data at mga bagay ng Excel. Ang tool ay nakasulat sa C++ at gumagamit ito ng parehong pinagbabatayan na teknolohiya gaya ng Excel. Nangangahulugan ito na ang Python code na tumatakbo sa PyXLL ay karaniwang mas mabilis kaysa sa Excel VBA code .





Pag-install at Pag-setup

Upang i-install ang PyXLL, magtungo sa website ng PyXLL at i-download ang add-in. Tiyaking ang bersyon ng Python at ang bersyon ng Excel na pipiliin mo ay tumutugma sa mga naka-install sa iyong system. Available lang ang PyXLL para sa Windows na bersyon ng Excel.

  PyXLL download page

Kapag kumpleto na ang pag-download, magbukas ng command prompt at patakbuhin ang command na ito:



 pip install pyxll

Kailangan mong naka-install ang Pip sa iyong system para tumakbo ang command sa itaas. Pagkatapos ay gamitin ang PyXLL package para i-install ang PyXLL add-in:

 pyxll install 

Itatanong ng installer kung na-download mo na ang add-in. Ipasok ang oo at pagkatapos ay ibigay ang path sa zip file na naglalaman ng add-in. Pagkatapos ay sundin ang mga tagubilin sa screen upang makumpleto ang pag-install.





Pagsisimula Sa PyXLL

Kapag na-install mo na ang plugin, ilunsad ang Excel. Bago ito ilunsad, may lalabas na prompt na humihiling sa iyo Simulan ang Pagsubok o Bumili ka na ngayon . Mag-e-expire ang trial na bersyon pagkalipas ng tatlumpung araw at kakailanganin mong bumili ng lisensya upang magpatuloy sa paggamit ng PyXLL.

  Prompt ng bersyon ng PyXLL

Mag-click sa Simulan ang Pagsubok pindutan. Ilulunsad nito ang Excel na may naka-install na add-in.





Sa Tab na Halimbawa ng PyXLL , i-click ang Tungkol sa PyXLL pindutan. Ipapakita nito sa iyo ang path kung saan mo na-install ang add-in, kasama ang mga path sa configuration at log file.

  PyXLL tungkol sa prompt sa Excel

Ang path na naglalaman ng configuration file ay mahalaga dahil kakailanganin mong i-edit ang file na iyon sa ibang pagkakataon, kaya tandaan ito.

saan ako maaaring mag-download ng libreng libro

Paglalantad ng Mga Pag-andar ng Python sa Excel

Upang ilantad ang isang Python function sa Excel bilang isang user-defined function (UDF), gamitin ang @xl_func dekorador. Ang dekorador na ito ay nagtuturo sa PyXLL na irehistro ang function sa Excel, na ginagawa itong available sa mga user.

Halimbawa, upang ilantad ang isang Python fibonacci() function sa Excel bilang isang UDF, maaari mong gamitin ang @xl_func dekorador tulad ng sumusunod:

 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-save ang code na ito gamit ang .py extension at tandaan ang path ng folder kung saan mo ise-save ang file.

kung paano i-update ang ubuntu sa terminal

Ngayon, buksan ang PyXLL configuration file sa isang editor at mag-scroll pababa sa isang linya na nagsisimula sa 'pythonpath'. Ang setting na ito ay karaniwang isang listahan ng mga folder na hahanapin ng PyXLL para sa mga module ng Python. Idagdag ang path sa folder na naglalaman ng source code ng function ng Fibonacci.

  Listahan ng mga folder ng PyXLL pythonpath

Pagkatapos ay mag-scroll pababa sa 'mga module' at idagdag ang iyong module. Halimbawa, kung na-save mo ang iyong file bilang fibonacci.py , idagdag ang pangalan 'fibonacci' sa listahan:

  Listahan ng mga module ng file ng pagsasaayos ng PyXLL

Ilantad nito ang mga function ng module na gumagamit ng @xl_func dekorador sa Excel. Pagkatapos ay bumalik sa Excel at, sa Tab na Halimbawa ng PyXLL , i-click ang I-reload ang PyXLL button para ma-sync ang mga pagbabago sa configuration file. Pagkatapos ay maaari mong tawagan ang Python fibonacci gumana tulad ng gagawin mo sa anumang iba pang formula ng Excel.

  Mga function ng Python sa Excel

Maaari kang lumikha ng maraming function hangga't kailangan mo at ilantad ang mga ito sa Excel sa parehong paraan.

Pagpasa ng Data sa Pagitan ng Excel at Python

Sinusuportahan ng PyXLL ang paggamit ng mga panlabas na library ng Python, tulad ng Pandas. Hinahayaan ka nitong ipasa ang data mula sa mga aklatang ito sa Python at vice versa. Halimbawa, maaari mo gumamit ng Pandas para gumawa ng random na dataframe at ipasa ito sa Excel. Tiyaking naka-install ang Pandas sa iyong system, pagkatapos ay subukan ang code na ito:

 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)

Dapat mong sundin ang parehong proseso upang ilantad ang module na ito at ang mga function nito sa Excel. Pagkatapos ay subukang tawagan ang random_dataframe gumana tulad ng gagawin mo sa ibang formula ng Excel:

 =random_dataframe(10,5)

Maaari mong baguhin ang bilang ng mga row at column ayon sa gusto mo.

  Dataframe sa Excel na nabuo ng Pandas kahit na PyXLL

Maaari mong ipasa ang iyong mga paunang natukoy na dataframe sa Excel sa parehong paraan. Posible rin na mag-import ng data ng Excel sa script ng Python gamit ang Pandas .

Mga Limitasyon ng PyXLL

  • Windows at Excel Compatibility: Ang PyXLL ay pangunahing idinisenyo para sa Windows at gumagana sa Microsoft Excel sa Windows. Maaaring may limitadong functionality o mga isyu sa compatibility sa mga non-Windows platform dahil na-optimize ito para sa mga Windows environment.
  • Deployment: Ang pag-deploy ng mga spreadsheet na pinapagana ng PyXLL sa mga end-user ay nangangailangan sa kanila na magkaroon ng Python na naka-install na may kaunting dependencies o ang Python runtime na kasama ng spreadsheet. Nangangahulugan ito na ang mga user na gustong gumamit ng mga spreadsheet na pinapagana ng PyXLL ay kailangang magkaroon ng Python na naka-install sa kanilang mga makina.
  • Learning Curve: Ang epektibong paggamit ng PyXLL ay nangangailangan ng ilang kaalaman sa Python programming at pamilyar sa object model ng Excel. Maaaring kailanganin ng mga user na hindi pamilyar sa Python o object model ng Excel na maglaan ng oras sa pag-aaral ng mga konseptong ito bago ganap na gamitin ang mga kakayahan ng PyXLL.
  • Gastos sa Lisensya: Ang PyXLL ay isang komersyal na produkto, at depende sa iyong paggamit at mga kinakailangan, maaaring may mga gastos sa paglilisensya na nauugnay sa paggamit nito. Ang halaga ng paggamit ng PyXLL ay depende sa mga salik gaya ng bilang ng mga user, deployment scale, at mga kasunduan sa paglilisensya.

Dapat Ka Pa ring Gumamit ng Mga Pag-andar ng Excel?

Depende ito sa kung ano ang gusto mong matupad. Palaging makatuwirang gamitin ang mga katutubong function ng Excel kapag available ang mga ito. Ngunit, para sa mas kumplikadong mga gawain, na hindi kayang hawakan ng mga built-in na function ng Excel, ang PyXLL ay isang mahusay na solusyon.

Ang library ng Pandas ay isang perpektong pandagdag para sa PyXLL na may mga kakayahan sa pagsusuri at malakas na suporta para sa pagproseso ng data.