Halihallo Dirk
Vielen Dank an alle ! Ich werde mich mal durch den Quelltext arbeiten.
Mal sehen, was rauskommt. Wer noch mehr Vorschläge hat, nur zu !
Du willst noch mehr? - Nun denn. Dir werd ichs geben du!!! :-))
läuft leider nur auf Win-Systemen (M$ OLE), aber wär auch ne Lösung.
Viele Grüsse
Philipp
Use OLE to control MS Excel.
use OLE;
Create an instance of Excel.
$app = CreateObject OLE "Excel.Application" ||
die "Unable to open Excel.";
Make application visible.
$app->{'Visible'} = 1;
Create a new workbook.
$app->Workbooks->Add();
Set values in a "range".
$app->Range("A1")->{'Value'} = "Developer";
$app->Range("B1")->{'Value'} = "Bugs";
$app->Range("B2")->{'Value'} = "Assigned";
$app->Range("C2")->{'Value'} = "Fixed";
$app->Range("A3")->{'Value'} = "Eric J.";
$app->Range("B3")->{'Value'} = 10;
$app->Range("C3")->{'Value'} = 10;
$app->Quit();
Leave Excel running. USe $app->Quit() to exit.
msexcel.pl
Hallo Philipp,
habe das Programm ausprobiert. Funktioniert, aber es soll eigentlich nicht das Excelprogramm beim Benutzer geöffnet werden. Die Exceldatei liegt ja auf dem Webserver. Nur der Webmaster hat darauf Zugriff.
Ich habe aber diese Lösung:
use strict;
use Spreadsheet::ParseExcel::SaveParser;
my $oExcel = new Spreadsheet::ParseExcel::SaveParser;
my $oBook = $oExcel->Parse('test.xls');
# Anzahl der Reihen (Datensätze) ermitteln
# ??????
# Update / Daten hinzufügen
$oBook->AddCell(0, 2, 2, 'Wert1'),
$oBook->AddCell(0, 1, 1, 'Wert2');
# Speichern
$oExcel->SaveAs($oBook, 'temp.xls'); # in neue Datei
$oExcel->SaveAs($oBook, 'test.xls'); # oder Datei überschreiben
Jetzt aber noch ein kleines Problem. Ich brauche noch die Anzahl der Reihen ( Datensätze ) die schon vorhanden sind. Hatte da schon was probiert, funktionierte aber nicht. Kannst du helfen ?
Gruß
Dirk