Thread Mehrere Excel Dateien einlesen (14 answers)
Opened by peet at 2012-08-21 11:16

Linuxer
 2012-08-24 11:32
#161310 #161310
User since
2006-01-27
3890 Artikel
HausmeisterIn

user image
Guest peet
payx
# Wie viele Zeilen hat das Arbeitsblatt? (Genauer: Wie lautet der Index der letzten Zeile?)
my $lastRow = ($worksheet->row_range())[1];

Die Spalte A hat 92 Zeilen. Also muss ich anstatt die 1, 92 eingeben oder bin ich falsch?


Falsch.

Auf einzelne Listenelemente kann man wie auf Array-Elemente zugreifen.
Wie in der Doku zu CPAN:Spreadsheet::ParseExcel zu lesen ist, liefert row_range zwei Werte:
Den Index der ersten Zeile mit Daten und den Index der letzten Zeile mit Daten.

Das Ergebnis von row_range sind also mehrere (zwei) Werte, von denen hier nur der zweite interessiert, daher der Index [1].
Wenn Du das auf 92 änderst, liegt das weit ab vom Schuss.

Siehe:
http://perldoc.perl.org/perldata.html#List-value-c...

Code: (dl )
1
2
3
4
5
6
7
# alle zurueckgelieferten Werte nach @array schreiben
my @array = $obj->method;
# nur der zweite interessiert eigentlich
my $wanted = $array[1];

### oder das ganze in kurz ohne extra-Array
my $wanted = ( $obj->method )[1];



Guest peet
payx
Code: (dl )
print chr($col+65) . ($row+1) . ": ";

Diese Zeile versteh ich nicht ganz...


chr() nimmt eine Nummer entgegen und liefert das entsprechende Zeichen.
Im ASCII entspräche die 65 einem A, womit bei $col = 0 eben als Spaltenbezeichner "A" rauskommen würde.

Siehe auch: http://perldoc.perl.org/functions/chr.html
und auch: http://www.asciitable.com/
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Mehrere Excel Dateien einlesen