sergvg
30-07-2009, 15:38
Приветствую, уважаемые участники!
Имею: самописный Perl-скрипт по созданию и заполнению книги Excel данными.
Задача: добавить в скрипт автоматическое закрепление области, так чтобы при прокручивании книги вправо, первых два столбца оставались видимыми.
Пробовал: открыл сгенерированный файл, включил запись макроса, выделил ячейку C1, включил закрепление областей, остановил запись макроса, залез в VBA (Alt+F11), в коде макроса увидел код:
Range("C1").Select
ActiveWindow.FreezePanes = True
Делаю в Perl:
my $excel = Win32::OLE -> GetActiveObject( 'Excel.Application' ) || Win32::OLE -> new( 'Excel.Application', '' );
my $workbook = $excel -> Workbooks -> Add();
my $sheet = $workbook->Worksheets(1);
#................
$sheet->Range("C1")->Select;
$excel -> ActiveWindow -> {FreezePanes} = "True";
В итоге, после выполнения скрипта, область не закрепляется... что я делаю не так ?
Имею: самописный Perl-скрипт по созданию и заполнению книги Excel данными.
Задача: добавить в скрипт автоматическое закрепление области, так чтобы при прокручивании книги вправо, первых два столбца оставались видимыми.
Пробовал: открыл сгенерированный файл, включил запись макроса, выделил ячейку C1, включил закрепление областей, остановил запись макроса, залез в VBA (Alt+F11), в коде макроса увидел код:
Range("C1").Select
ActiveWindow.FreezePanes = True
Делаю в Perl:
my $excel = Win32::OLE -> GetActiveObject( 'Excel.Application' ) || Win32::OLE -> new( 'Excel.Application', '' );
my $workbook = $excel -> Workbooks -> Add();
my $sheet = $workbook->Worksheets(1);
#................
$sheet->Range("C1")->Select;
$excel -> ActiveWindow -> {FreezePanes} = "True";
В итоге, после выполнения скрипта, область не закрепляется... что я делаю не так ?