Seite 1 von 1

Python als Bestandteil von Excel

Verfasst: Samstag 9. November 2024, 08:49
von Cybernuschel
Hallo liebe Pythongemeinde,

ich beschäftige mich zur Zeit mit Python in Excel, nehme also am Microsoft 365 Insider-Programm teil. Ich bin zwar nur ein absoluter Python Amateur, trotzdem finde ich Python in Excel spannend. Hier im Forum lese ich über all das sehr wenig.
Weiß schon jemand, wann Python ein fester Bestandteil von Python werden soll (Zeitplan) bzw. ob Python auch in andere Office 365 Produkte eingebaut werden soll? Es gibt Behauptungen, dass Python irgendwann mal VBA in Office 365 ablösen soll, was ich mir persönlich gar nicht vorstellen kann, denn Python und VBA sind doch sehr unterschiedlich. Vielleicht weiß ja jemand was.

Gruß Cybernuschel

Re: Python als Bestandteil von Excel

Verfasst: Samstag 9. November 2024, 11:45
von __blackjack__
Ablösen im Sinn von „VBA geht dann nicht mehr“ kann ich mir auch nur schwer vorstellen. Dafür gibt es zu viel VBA-Code da draussen der produktiv eingesetzt wird. Aber das eine andere Sprache möglich ist und auch irgendwann als Voreinstellung angeboten wird — warum nicht.

Ich würde das “sehr“ unterschiedlich nicht unterschreiben. Beides sind imperative Programmiersprachen, es gibt eine Schnittmenge von Syntaxkonstrukten und Datentypen die VBA fast komplett enthalten dürfte. Mit einen der grössten Unterschiede die ich sehe ist das in VBA bei Variablen Typ und Speicheradresse zum Namen gehören und nicht zum Wert und die Argumentübergabe „by reference“ passiert. In Python gehören Speicheradresse und Typ zum Wert und „call by reference“ geht nicht. VBA kann auch „call by value“ — da muss man in Python bei veränderbaren Typen explizit beim Aufruf dafür sorgen, dass der Wert kopiert wird.

Wenn man keinen Wert auf „pythonischen“ Code legt, kann man recht leicht VBA-Code schreiben, der sich als Python-Code verkleidet hat. 😜

Re: Python als Bestandteil von Excel

Verfasst: Samstag 9. November 2024, 13:03
von nezzcarth
Microsoft ist in den 1970ern als Firma gestartet, die einen BASIC Interpreter angeboten hat und seitdem gehört die Sprache fest zum Unternehmen. Neben den Gründen, die __blackjack__ genannt hat, kann ich es mir daher auch schon deswegen nicht vorstellen, dass man sich von BASIC in seinen Produkten, bei Office also VBA, trennt.

Microsoft sieht Excel sicher auch als Software zur Datenanalyse (leider). Da Python in dem Feld zunehmend an Bedeutung gewinnt, liegt die Einbindung von Python in Excel m.M.n. einfach darin begründet, dass man hier anschlussfähig bleiben und keine Marktanteile verschenken sondern sich vielleicht sogar erschließen will; viele Leute können heute einfach etwas Python.

Dass hier im Forum wenig darüber diskutiert wird, ist keine Excel-Spezialität. Mir fallen zahlreiche andere Software-Produkte ein, in die Python auch eingebettet ist und die hier ebenfalls kaum Thema sind.

Re: Python als Bestandteil von Excel

Verfasst: Samstag 9. November 2024, 13:08
von grubenfox
"Python als Bestandteil von Excel" habe ich schon... Python wird sowieso auf jeden Rechner installiert den ich länger als 5 Minuten in den Fingern habe, dazu dann xlwings.. . fertig!
Ich habe nur keinen Anwendungsfall dafür. Als ich mal vor Monaten was mit Excel und Python ausprobieren wollte, da ging es mit openpyxl leichter von der Hand. Aber das ist dann nur die Bearbeitung von Excel-Dateien und kein Python in Excel.
Im privaten Office bin ich bei den Softmaker-Produkten gelandet und nutze dort auch nur die Textverarbeitung (minimal). Bei den Kunden ist dann kein Excel im Gebrauch (jedenfalls habe ich da keine Berührungspunkte), die haben ihre Sorgen mit Access. Daher wäre Python als Bestandteil von Access für mich vielleicht interessant.

Auf der anderen Seite ist VBS ja nun offiziell für Tot erklärt und soll irgendwann in der Zukunft bei Windows komplett raus fallen. Da kenne ich noch ein paar Skripte die dann nicht mehr funktionieren werden und die bis dahin durch was anderes ersetzt werden müssen. Von mir aus gerne mit Python...

Re: Python als Bestandteil von Excel

Verfasst: Samstag 9. November 2024, 13:23
von __blackjack__
@nezzcarth: Ich glaube es ist weniger Microsoft das sich nicht von BASIC trennen möchte, sondern die Kunden, auch durch den Umstand, dass es so verdammt viel von solchem BASIC-Code da draussen um Produktiveinsatz gibt. Ich denke BASIC ist für Microsoft selbst seit .NET nicht mehr wirklich wichtig, denn seit dem ist VisualBasic ja eigentlich nur noch eine andere Syntax für C# mit einer kleinen Kompatibilitäts-Bibliothek. Die meisten die sich zwischen VB.NET und C# entscheiden müssen, nehmen C#. Es sei denn sie sind aus historischen Gründen VB-geschädigt und brauchen das. 😈