Thread Leere Zeile in Excel einfügen
(5 answers)
Opened by Lauvia at 2013-10-09 13:14
Hallo zusammen,
leider konnte ich keinen passenden Beitrag hier sehen. ich habe bereits ein Excel Template und möchte ab einer bestimmten Zeile drin schreiben. Ist ok! Da ich nie weiss, wie groß meine Quelldatei ist, möchte ich das Programm anpassen und solange eine neue Zeile zu schreiben gibt, muss eine neue leere zwischen vorletzter und letzter eingefügt werden. Achtung formatierter Rahmen (sehe Template muss berücksichtigt werden) Als Beispiel habe ich ein Codestück hier: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 use warnings; use Cwd; use OLE; use Win32::OLE::Const "Microsoft Excel"; my $directory = &getcwd; my ( $xl_report ) = "$directory/TemplateAuswertung.xlsx"; my ( $excel, $workbook, $sheet, $row); $excel = CreateObject OLE 'Excel.Application'; $excel -> {Visible} = 1; $workbook = $excel -> Workbooks -> Open ( "$xl_report" ) or &terminate ( "open $xl_report" ); $sheet = $workbook -> Worksheets(1); $sheet -> Activate(); $excel -> ActiveWindow -> {FreezePanes} = "True"; $sheet -> {Name} = "Test Report" . $workbook -> Worksheets -> {Count}; $excel -> {DisplayAlerts} = 0; $row = 16; for ($row = 16; $row <=20; $row++ ) { $sheet->Range( "A" . $row )->{Value} = "data"; #$sheet->Range( '17,1' )->Insert(); } $workbook -> SaveAs ( "$xl_report" ); $workbook -> Save; $workbook -> Close; $excel -> Quit; sub terminate { print "\a\a\nCould not @_ for the following reason:\n\n$!\n"; print "This program will now terminate. Press <ENTER> to exit."; <STDIN>; exit; } und das Ergebnis muss wie im File "Ergebnis" aussehen! Vielen Dank für eure Hilfe Anhänge Last edited: 2013-10-09 13:24:18 +0200 (CEST) |