


So rufen Sie Python-Skripte in Excel auf, um die Datenverarbeitung zu automatisieren!
Apropos Excel: Obwohl es seit mehr als 30 Jahren auf dem Markt ist, hat es immer noch 750 Millionen treue Benutzer auf der ganzen Welt und Python ist eine Berühmtheit im Internet Sprache, hat nur 7 Millionen Entwickler.
Excel ist die beliebteste Programmiersprache der Welt. Ja, Sie haben richtig gelesen, seit Microsoft die LAMBDA-Definitionsfunktion eingeführt hat, kann Excel Algorithmen in Programmiersprachen implementieren, ist also Turing-vollständig, genau wie JavaScript, Java und Python.
Obwohl Excel ein unverzichtbares Werkzeug für kleine Datenszenarien ist, ist es bei großen Datenmengen eher unzureichend.
Wir wissen, dass eine Excel-Tabelle bis zu 1.048.576 Zeilen und 16.384 Spalten anzeigen kann. Natürlich können Sie für die Datenverarbeitung VBA verwenden oder Python verwenden Excel bedienen.
Dies ist das Thema dieses Artikels, Pythons Drittanbieter-Bibliothek xlwings, die als interaktives Tool zwischen Python und Excel dient und es Ihnen ermöglicht, Python-Skripte einfach über VBA aufzurufen, um eine komplexe Datenanalyse durchzuführen.
Zum Beispiel Daten automatisch importieren:
oder Text nach dem Zufallsprinzip abgleichen:
1. Warum Python mit Excel VBA integrieren?
VBA kann als integrierte Makrosprache von Excel fast alles, einschließlich Automatisierung, Datenverarbeitung, Analysemodellierung usw. Warum also Python verwenden, um Excel VBA zu integrieren? Dafür gibt es drei Hauptgründe:
- Wenn Sie sich nicht mit VBA auskennen, können Sie Python direkt verwenden, um Analysefunktionen für Excel-Berechnungen zu schreiben, ohne VBA zu verwenden. Im Vergleich zu Python läuft VBA schneller , und das Schreiben von Code ist präziser und flexibler.
- Es gibt viele hervorragende Bibliotheken von Drittanbietern, die jederzeit verwendet werden können, was viel Codierungszeit sparen kann Python-Liebhaber sind möglicherweise bereits mit Data-Science-Bibliotheken wie Pandas und Numpy vertraut. Wenn Sie sie für die Excel-Datenanalyse verwenden können, ist dies sogar noch leistungsfähiger.
- Es gibt viele Bibliotheken in Python, die Excel bedienen können, wie z. B. xlsxwriter, openpyxl, pandas, xlwings usw.
- Aber im Vergleich zu anderen Bibliotheken weist xlwings fast die beste Gesamtleistung auf und xlwings kann Python-Code über Excel-Makros aufrufen.
Das Bild stammt aus Early Python
Die einführende Verwendung von xlwings wird hier nicht erklärt.
Die Installation von xlwings ist sehr einfach über pip in der Befehlszeile:pip install python
xlwings addin install


Nachdem xlwings und das Plug-in installiert sind, öffnen Sie zu diesem Zeitpunkt Excel. In der Symbolleiste wird ein xlwings-Menüfeld angezeigt. Dies bedeutet, dass das xlwings-Plug-in erfolgreich installiert wurde. Es dient als Brücke für VBA um Python-Skripte aufzurufen.
Wenn in Ihrer Menüleiste außerdem noch nicht „Entwicklungstools“ angezeigt wird, müssen Sie „Entwicklungstools“ zum Menüband hinzufügen, da wir Makros verwenden müssen. Die Schritte sind einfach:1. Gehen Sie auf der Registerkarte „Datei“ zu „Anpassen > Optionen“.
2. Aktivieren Sie unter „Menüband anpassen“ und „Hauptregisterkarten“ das Kontrollkästchen „Entwicklungstools“.
In der Menüleiste werden die Entwicklungstools angezeigt und Sie können mit der Verwendung von Makros beginnen.
Wenn Sie noch nicht wissen, was ein Makro ist, können Sie es vorübergehend als Werkzeug zur Automatisierung und Stapelverarbeitung verstehen.
An diesem Punkt sind die vorbereitenden Vorbereitungsarbeiten abgeschlossen und der nächste Schritt ist der eigentliche Kampf!
三、玩转xlwings
要想在excel中调用python脚本,需要写VBA程序来实现,但对于不懂VBA的小伙伴来说就是个麻烦事。
但xlwings解决了这个问题,不需要你写VBA代码就能直接在excel中调用python脚本,并将结果输出到excel表中。
xlwings会帮助你创建.xlsm
和.py
两个文件,在.py
文件里写python代码,在.xlsm
文件里点击执行,就完成了excel与python的交互。
怎么创建这两个文件呢?非常简单,直接在命令行输入以下代码即可:
xlwings quickstart ProjectName
这里的ProjectName
可以自定义,是创建后文件的名字。
如果你想把文件创建到指定文件夹里,需要提前将命令行导航到指定目录。
创建好后,在指定文件夹里会出现两个文件,就是之前说的.xlsm
和.py
文件。
我们打开.xlsm
文件,这是一个excel宏文件,xlwings已经提前帮你写好了调用Python的VBA代码。
按快捷键Alt + F11
,就能调出VBA编辑器。
Sub SampleCall()<br>mymodule = Left(ThisWorkbook.Name, (InStrRev(ThisWorkbook.Name, ".", -1, vbTextCompare) - 1))<br>RunPython "import " & mymodule & ";" & mymodule & ".main()"<br>End Sub<br><br>
里面这串代码主要执行两个步骤:
1、在.xlsm
文件相同位置查找相同名称的.py
文件
2、调用.py
脚本里的main()
函数
我们先来看一个简单的例子,自动在excel表里输入['a','b','c','d','e']
第一步:我们把.py
文件里的代码改成以下形式。
import xlwings as xw import pandas as pd def main(): wb = xw.Book.caller() values = ['a','b','c','d','e'] wb.sheets[0].range('A1').value = values @xw.func def hello(name): return f"Hello {name}!" if __name__ == "__main__": xw.Book("PythonExcelTest.xlsm").set_mock_caller() main()
然后在.xlsm
文件sheet1
中创建一个按钮,并设置默认的宏,变成一个触发按钮。
设置好触发按钮后,我们直接点击它,就会发现第一行出现了['a','b','c','d','e']
。
同样的,我们可以把鸢尾花数据集自动导入到excel中,只需要在.py文件里改动代码即可,代码如下:
import xlwings as xw import pandas as pd def main(): wb = xw.Book.caller() df = pd.read_csv(r"E:\test\PythonExcelTest\iris.csv") df['total_length'] = df['sepal_length'] + df['petal_length'] wb.sheets[0].range('A1').value = df @xw.func def hello(name): return f"Hello {name}!" if __name__ == "__main__": xw.Book("PythonExcelTest.xlsm").set_mock_caller() main()
好了,这就是在excel中调用Python脚本的全过程,你可以试试其他有趣的玩法,比如实现机器学习算法、文本清洗、数据匹配、自动化报告等等。
Excel+Python,简直法力无边。
参考medium文章
Das obige ist der detaillierte Inhalt vonSo rufen Sie Python-Skripte in Excel auf, um die Datenverarbeitung zu automatisieren!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP und Python haben ihre eigenen Vor- und Nachteile, und die Wahl hängt von den Projektbedürfnissen und persönlichen Vorlieben ab. 1.PHP eignet sich für eine schnelle Entwicklung und Wartung großer Webanwendungen. 2. Python dominiert das Gebiet der Datenwissenschaft und des maschinellen Lernens.

Python und JavaScript haben ihre eigenen Vor- und Nachteile in Bezug auf Gemeinschaft, Bibliotheken und Ressourcen. 1) Die Python-Community ist freundlich und für Anfänger geeignet, aber die Front-End-Entwicklungsressourcen sind nicht so reich wie JavaScript. 2) Python ist leistungsstark in Bibliotheken für Datenwissenschaft und maschinelles Lernen, während JavaScript in Bibliotheken und Front-End-Entwicklungsbibliotheken und Frameworks besser ist. 3) Beide haben reichhaltige Lernressourcen, aber Python eignet sich zum Beginn der offiziellen Dokumente, während JavaScript mit Mdnwebdocs besser ist. Die Wahl sollte auf Projektbedürfnissen und persönlichen Interessen beruhen.

Docker verwendet Linux -Kernel -Funktionen, um eine effiziente und isolierte Anwendungsumgebung zu bieten. Sein Arbeitsprinzip lautet wie folgt: 1. Der Spiegel wird als schreibgeschützte Vorlage verwendet, die alles enthält, was Sie für die Ausführung der Anwendung benötigen. 2. Das Union File System (UnionFS) stapelt mehrere Dateisysteme, speichert nur die Unterschiede, speichert Platz und beschleunigt. 3. Der Daemon verwaltet die Spiegel und Container, und der Kunde verwendet sie für die Interaktion. 4. Namespaces und CGroups implementieren Container -Isolation und Ressourcenbeschränkungen; 5. Mehrere Netzwerkmodi unterstützen die Containerverbindung. Nur wenn Sie diese Kernkonzepte verstehen, können Sie Docker besser nutzen.

Im VS -Code können Sie das Programm im Terminal in den folgenden Schritten ausführen: Erstellen Sie den Code und öffnen Sie das integrierte Terminal, um sicherzustellen, dass das Codeverzeichnis mit dem Terminal Working -Verzeichnis übereinstimmt. Wählen Sie den Befehl aus, den Befehl ausführen, gemäß der Programmiersprache (z. B. Pythons Python your_file_name.py), um zu überprüfen, ob er erfolgreich ausgeführt wird, und Fehler auflösen. Verwenden Sie den Debugger, um die Debugging -Effizienz zu verbessern.

VS -Code kann zum Schreiben von Python verwendet werden und bietet viele Funktionen, die es zu einem idealen Werkzeug für die Entwicklung von Python -Anwendungen machen. Sie ermöglichen es Benutzern: Installation von Python -Erweiterungen, um Funktionen wie Code -Abschluss, Syntax -Hervorhebung und Debugging zu erhalten. Verwenden Sie den Debugger, um Code Schritt für Schritt zu verfolgen, Fehler zu finden und zu beheben. Integrieren Sie Git für die Versionskontrolle. Verwenden Sie Tools für die Codeformatierung, um die Codekonsistenz aufrechtzuerhalten. Verwenden Sie das Lining -Tool, um potenzielle Probleme im Voraus zu erkennen.

Python zeichnet sich in Automatisierung, Skript und Aufgabenverwaltung aus. 1) Automatisierung: Die Sicherungssicherung wird durch Standardbibliotheken wie OS und Shutil realisiert. 2) Skriptschreiben: Verwenden Sie die PSUTIL -Bibliothek, um die Systemressourcen zu überwachen. 3) Aufgabenverwaltung: Verwenden Sie die Zeitplanbibliothek, um Aufgaben zu planen. Die Benutzerfreundlichkeit von Python und die Unterstützung der reichhaltigen Bibliothek machen es zum bevorzugten Werkzeug in diesen Bereichen.

VS -Code kann unter Windows 8 ausgeführt werden, aber die Erfahrung ist möglicherweise nicht großartig. Stellen Sie zunächst sicher, dass das System auf den neuesten Patch aktualisiert wurde, und laden Sie dann das VS -Code -Installationspaket herunter, das der Systemarchitektur entspricht und sie wie aufgefordert installiert. Beachten Sie nach der Installation, dass einige Erweiterungen möglicherweise mit Windows 8 nicht kompatibel sind und nach alternativen Erweiterungen suchen oder neuere Windows -Systeme in einer virtuellen Maschine verwenden müssen. Installieren Sie die erforderlichen Erweiterungen, um zu überprüfen, ob sie ordnungsgemäß funktionieren. Obwohl VS -Code unter Windows 8 möglich ist, wird empfohlen, auf ein neueres Windows -System zu upgraden, um eine bessere Entwicklungserfahrung und Sicherheit zu erzielen.

VS -Code -Erweiterungen stellen böswillige Risiken dar, wie das Verstecken von böswilligem Code, das Ausbeutetieren von Schwachstellen und das Masturbieren als legitime Erweiterungen. Zu den Methoden zur Identifizierung böswilliger Erweiterungen gehören: Überprüfung von Verlegern, Lesen von Kommentaren, Überprüfung von Code und Installation mit Vorsicht. Zu den Sicherheitsmaßnahmen gehören auch: Sicherheitsbewusstsein, gute Gewohnheiten, regelmäßige Updates und Antivirensoftware.
