Excel

Hallo,

Ich müsste mit einem Script in ein bestehendes Excel File in bestimmte Zellen Werte schreiben.

Hat das schon jemand mal gemacht?

Ich nutze dafür GitHub - PHPOffice/PhpSpreadsheet: A pure PHP library for reading and writing spreadsheet files
Die benötigten Bibliotheken habe ich per Hand geladen und als Unterordner in den Script-Ordner gepackt.

Hallo,

Hätte ich auch probiert.

Wie verwendest du es dann im Script?

use PHPOffice\PhpSpreadsheet\Spreadsheet;

$spreadsheet = new Spreadsheet();

Parse error: syntax error, unexpected ‚$spreadsheet‘ (T_VARIABLE) in C:\ProgramData\Symcon\scripts\51584.ips.php on line 9

Du musst das ‚Einstiegsscript‘ (also das, was der Composer Autoload.php macht) natürlich per include laden.

Sieht bei mir so aus:

require './vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Reader\Xlsx;

$sheetnames = ['Tabelle1'];

$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader('Xlsx');

Wie ich an den fertigen vendor Ordner gekommen bin weiß ich aktuell nicht mehr. Denn ich habe vmtl. auf keiner meiner Systeme composer im Einsatz. Ggf. gibt es das irgendwo als online Tool.

Nachtrag: Vielleicht war es dieses Tool. https://php-download.com/

Hallo,

Danke für deine Hilfe, aber ich bekomm das nicht zum laufen…

Wir fassen zusammen: Du hast z.B. mit der oben verlinkten Seite dir alle notwendigen Dateien geladen und hast jetzt (unter Windows: den Ordner c:\ProgramData\Symcon\scripts\vendor)

influxdb\
ringcentral\
sebastian\
ralouphie\
markbaker\
cboden\
evenement\
phpoffice\
monolog\
psr\
theseer\
webpatser\
phar-io\
jdorn\
react\
doctrine\
zendframework\
guzzlehttp\
bin\
phpdocumentor\
ratchet\
phpspec\
myclabs\
phpunit\
symfony\
php-pm\
andig\
composer\
autoload.php

Innerhalb deines Excel Scripts greifst du auf die Bibliothek zu mit:

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Reader\Xlsx;

$sheetnames = ['Tabelle1'];

$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader('Xlsx');

Statt des reader baust du dir entsprechend einen writer nach Doku von PhpSpreadsheet.

Hallo,

Ich komme einfach nicht zu dem Ventor Ordner.
Auf php-download funktioniert das auch nicht so richtig.
Kannst du mir den Ordner ev. als zip komplett hochladen?

Danke

Was bedeutet das? Welche Fehlermeldung kommt? Wie sieht die heruntergeladene ZIP Datei aus? Ich werde aufjedenfall mein Paket hier nicht hochladen, denn ich habe keine Lust die Lizenzbedingungen jedes einzelnen Pakets zu studieren, ob ich das überhaupt darf.