Perl 처리 Excel

2016 단어

앞말


더 많은 내용은 제 개인 블로그를 방문하세요.
  • 모듈을 설치할 필요가 없고 기능이 강하다는 장점이 있다
  • 크로스플랫폼 구현이 불가능하고 win시스템과 오피스 소프트웨어에 의존해야 한다는 단점이 있다

  • 크로스플랫폼 처리 excel을 실현하려면perl처리 Excel로 이동하십시오(크로스플랫폼)
    use FindBin qw($Bin);
    
    use Win32::OLE qw(in with);
    use Win32::OLE::Const 'Microsoft Excel';
    
    my $Excel = Win32::OLE->GetActiveObject('Excel.Application') || Win32::OLE->new('Excel.Application', 'Quit');
    # 
    $Excel->{DisplayAlerts} = 0;
    
    my $Book = $Excel->Workbooks->Open($file);
    my $Sheet = $Book->Worksheets(1);  
    #my $Sheet = $Book->Worksheets($sheetName);  
    #my $SheetName = $Book->Worksheets(1)->{Name};  
    
    my $maxRow = $Sheet->UsedRange->Rows->Count;
    my $maxCol = $Sheet->UsedRange->Columns->Count;
    
    foreach my $row(1..$maxRow){
        foreach my $col(1..$maxCol){
            # , 
            next if $Sheet->Range("$row:$row")->EntireRow->{Hidden};
            
            # 
            my $value = $Sheet->Cells($row,$col)->{Value};
            
            # 
            $Sheet->Cells($row,$col)->Interior->{Color} = $InColor;
            
            # 
            $sheet -> Range("G7:H7") -> Font -> {Bold} = "True";
            
            # 
            $sheet -> Range("G7:H7") -> Font -> {Italic} = "True";
            
            # 
            $sheet -> Range("G7:H7") -> Font -> {Underline} = xlUnderlineStyleSingle;
            
            # 
            $sheet -> Range("G7:H7") -> Font -> {Size} = 8;
            
            # 
            $sheet -> Range("G7:H7") -> Font -> {Name} = "Arial";
            
            # 
            $sheet -> Range("G7:H7") -> Font -> {ColorIndex} = 4;
            
            # 
            $sheet -> Range('A:A') -> {ColumnWidth} = 9.14;
            
            # 
            $sheet -> Range("8:8") -> {RowHeight} = 30;
        }   
    }
    
    $Book->Save();
    $Book->Close();
    $Excel->Quit();
    

    좋은 웹페이지 즐겨찾기